[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: First httpd deadlock fixed, but found another one

From: Brandon Ehle <azverkan_at_yahoo.com>
Date: 2002-12-10 23:13:05 CET

>Huh? When I shutdown Apache it first sends SIGTERM to the other
>processes and if that is ignored it sends SIGKILL. It's not possible
>for a process to ignore SIGKILL at all, let alone hang around for 4
>hours. What on earth are you doing?
Hrmm, are you sure? I see it try to shutdown, then if that doesn't work
it starts sending SIGTERMs to processes. If the processes ignore the
SIGTERM's, it will wait for them to finish which could be hours or
never, unless I manually send a SIGKILL, which does the job, but the
repository usually needs recovery at that point.

>>>Did you do as I suggest and check your Apache and system logs for
>>>killed proceses? It's quite possible that 8333 files is pushing
>>>Apache over a memory limit.
>>No killed processes.
>I just deliberately provoked an OOM on my Linux machine. The syslog
>Dec 10 21:02:38 debian2 kernel: Out of Memory: Killed process 28928 (httpd).
>but there is no message in the Apache log, so it's easy to miss.
I've gotten some of these previously, but not this time. (This machine
has 2GB of RAM so it takes a bit to OOM it).

>>>Isn't this thread still processing a request? One that would have
>>>been generated by your test? Or did you fail to mention some other
>>>process that accesses the repository?
>>See above, apache might have needed more than 4 hours to shutdown.
>>Next time I will give it more time.
>I still don't understand why you think shutting down Apache would
>cause a dav_method_put request. As far as I can tell a dav_method_put
>occurs when you commit a new or modified file, and as such I would
>assume it is part of a failed commit in your test.
I don't think shutting down caused this request, this is just what is
failing to shut down.

>If the hang is repeatable then I suggest you check that the database
>is not locked before shutting down Apache, run an 'svn ls URL' for
>example. Of course if your test is hanging the database then it
>appears it is not detecting failed commands. In that case it might be
>better to have the test not shut down Apache, and then check manually
>whether the database has hung.
Its very repeatable, it just takes a few hours and alot of data to get
Apache into this state.

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Dec 10 23:11:22 2002

This is an archived mail posted to the Subversion Dev mailing list.