mailboxes.db discrepancies between mailbox and mupdate servers

Simon Amor simon at leaky.org
Tue Jul 9 17:28:29 EDT 2013


On 9 Jul 2013, at 22:20, Shawn Winnington-Ball <swball at uwaterloo.ca> wrote:
> 
>> You can force a backend to push all of its mailboxes to the mupdate master
>> by running "ctl_mboxlist -m" on the backend.  If you're not 100% sure
>> whether you want to push every mailbox before you know what state things
>> are in, you can individually push mailboxes, again using mupdate protocol.
>> Log in to the backend and run
>> 
>> $ mupdatetest your.mupdate.server.com.
>> 1 MUPDATEPUSH user.foo
> 
> However, I tried running this command and got
> 
> B01 MUPDATEPUSH user.foo
> B01 BAD "Unrecognized command"
> 
> I can't find MUPDATEPUSH in RFC 3656 either.
> 

According to my notes, MUPDATEPUSH is used through an admin user's IMAP connection (via imtest) not through mupdatetest.

If the mailbox doesn't actually exist, you might need to use LOCALCREATE via IMAP to the backend prior to MUPDATEPUSH.

LC1 LOCALCREATE user.foo
ACL0 SETACL user.foo foo lrswipkxtea
MP1 MUPDATEPUSH user.foo

I use virtual domains so the syntax of the SETACL command may be slightly off ('foo' is the authenticated user as far as I can remember).

If you've already told the mupdate server about the mailbox, you probably don't need the last 2 commands, just the localcreate should be enough to let them connect to the mailbox.

Simon

Disclaimer: I'm not a cyrus expert - I just break it a lot :)



More information about the Info-cyrus mailing list