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.
signature.asc
Description: This is a digitally signed message part