child process restarts frequently

Håvard Futsæter havard.futseter at
Thu Jul 19 17:29:16 CEST 2007

Dag-Erling Smørgrav wrote:
> Håvard Futsæter <havard.futseter at> writes:
>> Might this perhaps be an indication that Varnish gets into trouble
>> when it receives a request for a resource while the cached object for
>> this resource is beeing recycled?
> Sounds like it.  Poul-Henning, could you take a closer look at the
> locking in the expiry code?

Hi. I have some more information regarding the above mentioned problem:

We now think the restart is caused by a conflict between the purging 
routine and the timeout routine.

We have the following scenario:

1. url.purge <regexp>.
2. An object that will be affected by the purge times out and is discarded.
3. AFTER ExpPick, but BEFORE ExpKill, there is a request for the same 
object. The object is consequently banned.
4. Immediately after this ban the child process restarts.

Perhaps the expire-system tries to move the object to deathrow twice? 
Speculation only...

For testing purposes we have temporarily removed the url.purge command, 
and have seen no restart after this was done.

Håvard Futsæter
Telefon: +47 22 96 32 69
Mobil:   +47 99 69 61 84

More information about the varnish-misc mailing list