From: SourceForge.net <no...@so...> - 2007-09-19 19:52:18
|
Bugs item #1795281, was opened at 2007-09-14 21:53 Message generated for change (Comment added) made by fabiankeil You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=111118&aid=1795281&group_id=11118 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: version 3.0.7 >Status: Pending >Resolution: None Priority: 5 Private: No Submitted By: Nobody/Anonymous (nobody) Assigned to: Fabian Keil (fabiankeil) Summary: Dropped connections under load Initial Comment: If CPU is busy privoxy begins to drop new connections because of too small backlog. jbsockets.c: while (listen(fd, 5) == -1) { if (errno != EINTR) { return(-1); } } should be changed to: while (listen(fd, 50) == -1) { if (errno != EINTR) { return(-1); } } stalkerdoom somewhere_near yandex.ru ---------------------------------------------------------------------- >Comment By: Fabian Keil (fabiankeil) Date: 2007-09-19 19:52 Message: Logged In: YES user_id=875547 Originator: NO How did you reproduce the problem to verify that setting backlog to 50 isn't enough but 200 is and that backlog isn't hardlimited to SOMAXCON anyway? ---------------------------------------------------------------------- Comment By: spacelight (spacelight) Date: 2007-09-15 14:03 Message: Logged In: YES user_id=1891111 Originator: NO Of course that solution is not sharp. Real problem is too much job in listen thread loop. Messing with files, sweeping etc. ---------------------------------------------------------------------- Comment By: spacelight (spacelight) Date: 2007-09-15 13:54 Message: Logged In: YES user_id=1891111 Originator: NO I was wrong with SOMAXCONN, because it equals 5 on Windows. So, that works perfectly for me: while (listen(fd, 200) == -1) { if (errno != EINTR) { return(-1); } } (50 was still was not enough) ---------------------------------------------------------------------- Comment By: Fabian Keil (fabiankeil) Date: 2007-09-15 13:04 Message: Logged In: YES user_id=875547 Originator: NO Done. Thanks for the report. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2007-09-14 23:59 Message: Logged In: NO Better to changed to: while (listen(fd, SOMAXCONN) == -1) { if (errno != EINTR) { return(-1); } } ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2007-09-14 22:19 Message: Logged In: NO Bug related to version 3.0.6, not to 3.0.7 ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=111118&aid=1795281&group_id=11118 |