From: Vlad S. <vl...@cr...> - 2006-03-01 23:19:22
|
I played with this and still not sure what is the problem. With small TCP buffers and starting with 2 request it slws down and reads be small chunks. netstat shows Send-Q so it might be TCP stack playing on Linux, Zoran, can you check this on Solaris. I put debug in SockRead and see lines like this [01/Mar/2006:18:20:14][32388.3065797552][-spooler2-] Error: n=1228/4096 avail=924176 max=1000001 [01/Mar/2006:18:20:14][32388.3065797552][-spooler2-] Error: n=1228/4096 avail=925404 max=1000001 [01/Mar/2006:18:20:14][32388.3065797552][-spooler2-] Error: n=103/4096 avail=925507 max=1000001 [01/Mar/2006:18:20:14][32388.3065797552][-spooler2-] Error: n=1536/4096 avail=927043 max=1000001 [01/Mar/2006:18:20:14][32388.3065797552][-spooler2-] Error: n=1536/4096 avail=928579 max=1000001 It could be the client as well, i tried to submit this from separate process with the same result. Stephen Deasey wrote: >> On 2/28/06, Stephen Deasey <sd...@gm...> wrote: >>> Looks like the maxinput setting which is supposed to limit the max >>> size of a file upload is not being honoured. That's potentially >>> nasty... >>> >>> With the spooler threads disabled, test http-4.5 just fails. It >>> returns 200 OK and the content where as it should return 413 Request >>> Entity Too Big. >>> >>> With the spooler threads enabled, the test hangs. Sometimes... It >>> was doing this occasionally, now it does it consistently for me. >>> Once, it did hang just prior to this test beginning to run. >>> >>> Something racy going on there... >> >> >> Modified Files: >> ChangeLog >> Log Message: >> Fixed error reporting during >> request parsing, now server returns 414/400 return codes and honors >> maxinput/maxheaders parameters. Test http-4.5 does not hang actually >> but with sndbuf/rcvbug set to so small values it takes very logn time to >> read the request, by putting Ns_Log in SockRead i was seeing reading by >> 64/192 bytes but the server was operational. > > > I don't think that's the case. Test http-4.4 is almost exactly the > same as http-4.5 except it sends 1000001 bytes instead of 1000003 and > it takes only a second to run. > > Experimenting further, if I drop the snd/rcv buffer sizes from 9 to 8, > the test no longer stalls. > > Increasing the buffer sizes to 16, 32, 64, 128, 256, 512, 1024 and > 2048 the test still stalls. So this is clearly not an issue of small > buffers taking a long time to fill. 4096 seems to work. > > Running top while the server is stalled shows that nsd is not buzzing > the processor. The server will run another request while the current > one is stalled. > > I can also get the stalling to go away by disabling the spooler > threads, even with the odd buffer sizes. > > Remember, occasionally this works for me if I run the test suite > enough times. This suggests that there is a locking or socket timeout > race or, there's more than one bug interacting... > > > ------------------------------------------------------- > This SF.Net email is sponsored by xPML, a groundbreaking scripting language > that extends applications into web and mobile media. Attend the live webcast > and join the prime developer group breaking into this new coding territory! > http://sel.as-us.falkag.net/sel?cmd=k&kid0944&bid$1720&dat1642 > _______________________________________________ > naviserver-devel mailing list > nav...@li... > https://lists.sourceforge.net/lists/listinfo/naviserver-devel > |