Cyrus replication problems

Bron Gondwana brong at fastmail.fm
Thu Sep 13 00:59:11 EDT 2007


On Tue, 11 Sep 2007 23:33:02 +0600, "Sergey N. Romanov" <subscription at innter.net> said:
> Hello all,
> 
> I have 2 servers and try to make replication between them.
> 
> I have FreeBSD 6.2 and Cyrus IMAPd 2.3.9 compiled from sources.
> 
> Configuration of master server.
>   syncclient    cmd="/usr/local/cyrus/bin/sync_client -r"
>
> 1. I can not start master server if replica server is not started. I
> have messages like
> 18:12:50 [b3] sync_client[54464]: connect(xx.xx.xx.xx) failed: Operation
> timed out
> in master server log file.

Try:

"/usr/local/cyrus/bin/sync_client -r -o"

 -o     Only attempt to connect to the backend server once rather
        than waiting up to 1000 seconds before giving up.

I wrote this patch after having exactly the same problem, and it was
accepted upstream pre 2.3.9, so you shouldn't need any patches for it.

> 2. If I restarted replica server, then I have problems with replication.
> Right after replica stopped I have
> 18:34:05 [b3] sync_client[76096]: Error in do_sync(): bailing out!
> message in master server log file and I can not see sync_client process
> on master server.

Yes.  We have a script which runs from cron every 10 minutes and watches
for this situation.  I believe I've posted to this list about it before:

 <20070127050318.GC6234 at brong.net>

http://cyrusimap.web.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&msg=42833

> 3. After replica server is started again replication do not start
> (because no sync_client process) and I should restart master server.

Yes, or start sync_client by hand.

> 4. I can see files like log-xxxx in sync folder and commands in these
> files are not executed. sync_client do not process these files after
> replication started.

You need to run them by hand too:

sync_client -r -f /path/to/sync/log-xxxx && rm -f /path/to/sync/log-xxxx

> Replication do not work correctly? Or what is wrong?!

Replication is not a turnkey solution - you need to have monitoring in
place and tools to help you clean up.  As you can see, it's something
that was built to fill a particular need in one place and hasn't really
been generalised out to a fault-tolerant tool that can be used without
significant effort into maintaining it.

That said, once you have that infrastructure around it, it works pretty
well most of the time.  Be glad you didn't live through the really buggy
early days!

Bron.
-- 
  Bron Gondwana
  brong at fastmail.fm



More information about the Info-cyrus mailing list