>>When we close the >>terminal that started webkit either in background or as a daemon, if the >>servlet prints a lot of text to the stdout, the servlet hangs. If I >>remove the print statements, it works fine. I'm writing a test script >>now... This might be related to the other strange FreeBSD problem where >>I have to print to stdout before the threads will shutdown sockets >>cleanly. >> >>I'm hoping this is a Webware problem so we can fix it but I suspect >>there is something wrong in FreeBSD/Python which may be much much harder >>to find and fix :(
> I suspect you are correct. However, do you need a lot stdout output? I use > this for debugging and of course, if you close the terminal you won't see > this text anyway. We only print for debugging too but had no idea what was hanging the server since the problem only happened after we closed the terminal and we could no longer see our print statements :) I started writing to a debug file to find the offensive code. I've removed the print statements but I'll be a lot more confident when strange bugs like these are found and fixed instead of worked around. > Also, do you need to close the terminal? Why not leave it up? We use SSH to login remotely from our Windows boxes to start webkit, we can't leave those terminals open forever, even when we try, the network goes down or we lose power with a passing thunderstorm. I'm about to start working on getting webkit to start at reboot and use Monitor to keep it up but we haven't gotten that far yet. Any advice would be great. Even when that is all working, I'll be a lot more confident when strange bugs like these are found and fixed. Configuration: FreeBSD 4.3, Python 2.1, Webware CVS. Attachment: Sevlet that can reproduce the problem in a couple lines of code. Problem: Printing a long SQL statement (provided in example) after the terminal is closed that started webkit causes the servlet to hang. Printing a long but simple string does not cause a problem. I haven't figured out what is special about the SQL string yet, I replaced "$" with "Z", thinking that the shell interpreter might be getting confused but it had no effect. When I start a new terminal, stop and restart webkit, the previously hung requests complete and the SQL statements prints to the new terminal. -Jeff
<<winmail.dat>>
