mailboxes.db disagree between master and replica

Tod Pike tgp at cs.cmu.edu
Thu Dec 12 16:30:08 EST 2019


Hello:
   I am running a 3.X cyrus setup with master/slave replication. I
have discovered that one of my replicas has gotten out of sync with
it's master server, not in the sense that the mailboxes are not
replicated, but that the mailboxes live in different partitions on
the master and the slave.

   As an example, if I do a "ctl_mboxlist -d user.<foo>" on the master,
I get back that it lives on partition 2. If I do the same thing on
the replica, I get back that it lives on partition 4. What happened
at one time is that the user got moved from partition 4 to partition 2
and it worked correctly on the master, but never happened on the slave.
BTW, the mupdate server agrees with the master, not the replica.

   As an experiment, I tried to do a "ctl_mboxlist -m -w" on the
replica server, but it returns "couldn't get mupdate server name" since
it doesn't even know about the mupdate server in it's role as a replica.

   What are my options here - I know that I could just copy the
mailboxes.db file from the master to the replica, then manually move
the mailboxes that are in the "wrong" place to the "right" place, but
this seems a little drastic. Any way I can just tell the replica to
update the location of the mailbox one at a time?

Thanks!

Tod Pike
-- 
CMU Computing Services
SGRG 105


More information about the Info-cyrus mailing list