www-apache-bugdb mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matt Braithwaite <...@alink.net>
Subject os-bsdi/2227: serializing access to accept with fcntl works better than flock under BSDI
Date Wed, 13 May 1998 21:17:09 GMT

>Number:         2227
>Category:       os-bsdi
>Synopsis:       serializing access to accept with fcntl works better than flock under
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    apache
>State:          open
>Class:          change-request
>Submitter-Id:   apache
>Arrival-Date:   Wed May 13 14:20:01 PDT 1998
>Originator:     mab@alink.net
>Release:        1.2.6
BSDI/OS 2.1 and 3.1 with the standard compiler
in the interest of honesty i have to tell you that we added the
apache/SSL patch, and started using multiple `Listen' directives, at
the same time.  but, after we did so, our HTTP test program started
having problems (seldom; a few times a day) with the servers so
upgraded.  the problem was that requests would sometimes time out
after 30 seconds.  since the requests (1) are distinctive; i can
distinguish the test program's requests from other programs' requests
and (2) occur at very regular intervals, i was able to determine that
requests that timed out were actually logged by the server like a
minute or two after they were issued, and at the exact same instant as
another request came in to the server---as though the first request
had gotten stuck, and the second one jarred it loose.

anyway, since we'd never used multiple listen directives before, i
tried switching the servers in question from the default flock locking
to fcntl locking, for synchronization of calls to accept.  this worked
fine; the test program has not noted any problems since i made the
no guarantee that you can; but i would be surprised if whatever conditions you
customarily use to tickle the accept synchronization problem do not produce it
with flock locking under vanilla BSDI 2.1 or 3.1.
switch BSDI to fcntl locking.
[In order for any reply to be added to the PR database, ]
[you need to include <apbugs@Apache.Org> in the Cc line ]
[and leave the subject line UNCHANGED.  This is not done]
[automatically because of the potential for mail loops. ]

View raw message