Twisted bites me (Oh, how frustrating this is...)


One of the reasons for moving to Linux for my workstation was to have my development environment closer to the production server environment. The theory being that with two Unix-ish operating systems, I could rely on being able to readily move code from one to the other without those annoying "oh, that works fine on Windows, but doesn't work at all on FreeBSD" stuff.

Well, in the first test, that rationale has failed. Moving the demo system over to cmon has failed. Annoyingly, it appears to be an extremely low-level failure, either in the http module or the tcp-transport. My code is all running perfectly well, the scanner scans, even the web-pages render correctly, but they can't be seen because the twisted web-server is broken.

Basically what's happening is that the request comes in, is dispatched to my code, my code returns the string result, Nevow writes it to the transport, but it never shows up at the client. Well, not quite. It shows up when I kill the reactor (i.e. when I close the connection).

Seems likely that it's a problem with HTTP 1.1 handling (i.e. the connection is having keep-alive specified, and something isn't getting the end-of-message marker). At the moment I'm rather frustrated; I've essentially burned a whole day on this and not moved one jot closer to getting finished on the project (and there's more than enough to do without such a delay). Which means the whole day is a write-off from an economic standpoint too. Blah.

Comments

Comments are closed.

Pingbacks

Pingbacks are closed.