Frontend becomes unusable when one backend dies
Wesley Craig
wes at umich.edu
Thu Jul 5 10:38:36 EDT 2007
I assume that the frontend is also the murder master? Other
pertinent questions are, "How many connection do you normally get?"
and "In what way is the backend 'down'?"
The client_timeout sets an alarm that interrupts the connect system
call. The frontend may try more than once, tho, if the backend has
more than one address, e.g., IPv4 and IPv6. Are you observing imapd
and pop3d on the frontend that are waiting more than client_timeout
to give up? As they fail to connect, clients should log:
connect(server-name) failed: timed out
so you should be able to see just how long they are waiting for the
connect to fail.
Another possibility is that the clients are poorly behaved, e.g.,
they are getting an error on SELECT, but don't close the connection
to the frontend. The client_timeout is just controlling the timeout
of the connect from the frontend to the backend, not the duration of
the life of the frontend processes. For imapd, the timeout is 30
*minutes*.
:wes
On 05 Jul 2007, at 06:13, Frank Richter wrote:
> I'm running a simple standard murder environment (v2.3.8 on Linux
> x86_64)
> - one frontend, two backends. If one of the two backends is down,
> then the frontend (and the whole system) becomes unavailable after
> some
> minutes:
>
> On the frontend imapd's and pop3d's are started till the maximum
> count (maxchild in cyrus.conf) is reached. It seems that they're still
> trying to reach the "dead" backend server.
>
> Maybe it is a timeout issue - I let the default client_timeout
> (10 seconds) in imapd.conf. Is this value relevant for this behavior?
More information about the Info-cyrus
mailing list