On Tue, 2007-07-03 at 00:17 +0900, Christian Balzer wrote:

> > > Jun 22 15:08:58 mb11 dovecot: listen(143) failed: Interrupted system
> > > call
> > 
> > Did you use killall? I think this happens only with it.

Not even with it actually. I was probably thinking about something else.

> Nope, this is a Debian/Linux show and I did HUP just the master process.
> It only happened some of the times on the (then) busiest node, but it 
> clearly is a race condition of sorts. Set up a test environment with
> about 30-50 logins/second and I'm sure you can reproduce it. ;)

Not even with 1100 logins/sec. :)

And in the code I'm already catching EINTR. Only if listen() fails 10
times with EINTR it exits with that error. And between those 10 listen()
calls is a 1 second sleep. But of course if the process is getting
signals all the time the sleep also fails with EINTR. But a single HUP
signal shouldn't interrupt more than a single syscall, so I've really no
idea what's happening.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to