On Wed, Jul 10, 2019, at 19:11, Egoitz Aurrekoetxea wrote:
> Good morning,
> 
> In previous thread (with the title slightly incorrect) I talk about an issue 
> suffered some day with Sieve script and folder subscriptions. The Sieve part, 
> was related to the migration, so for the moment let’s forget about it (for me 
> at least) as it has never reproduced again since then.

Sorry, I missed the previous thread. Did you mention which version of Cyrus you 
are running? There's clearly a bug and it would be good to know which 
version(s) it affects.

> About the folder subscription issue, I think I got something, at least a 
> close approximation... When a user causes in mua a rename mailbox (a rename 
> for a folder caused by a folder move in hierarchy), after the own rename, if 
> folders were subscribed “should” (for the "plain user" at least) become 
> subscribed in the new path. It seems that after a user rename in Cyrus the 
> new folder is automatically subscribed (even if no subscribe command is sent 
> by the mua). But this, does not cause in the replica (in the slave, if SUB is 
> not sent by the client) a sync_apply_changesub() or something like entering 
> in the “ move_subscription” condition in mboxlist_renamemailbox(), and then, 
> the folder is properly renamed but not subscribed in the slave. I think this 
> is what I’m suffering. Obviously, if after a rename the mua sends a subscribe 
> too, no issue is seen. I think the problem happens when a mailbox rename 
> happens and a SUB is not send later.

Subscriptions aren't automatically renamed when a folder is renamed, but they 
should be automatically renamed for a user rename. Intermediate replicated 
states can be bit messy due to race conditions with replication, but I believe 
it should always wind up in the final correct state. If not, that's a bug for 
sure!

> An example : 
> 
> The folder domain.com!user.parta^partb.Archives.2019.TRAFICO.CHINA.XINGANG is 
> moved (renamed) to trash.
> 
> May 16 16:16:50 mx6c imap[83976]: conversations_rename_folder: renamed 
> domain.com!user.parta^partb.Archives.2019.TRAFICO.CHINA.XINGANG to 
> domain.com!user.parta^partb.Trash.XINGANG
> May 16 16:16:50 mx6c imap[83976]: Rename: 
> domain.com!user.parta^partb.Archives.2019.TRAFICO.CHINA.XINGANG -> 
> domain.com!user.parta^partb.Trash.XINGANG
> May 16 16:16:50 mx6c imap[83976]: Deleted mailbox 
> domain.com!user.parta^partb.Archives.2019.TRAFICO.CHINA.XINGANG
> 
> In the master (sync), the folder in Trash is subscribed but in the slave it 
> is not, and remains subscribed the folder in the original location in the 
> “____.sub” file.

This might just be a matter of failing to sync_log the subscription in that 
codepath. Hmm...

But there is a question of whether we should even be renaming the subscription 
- RFC3501 is a little silent on this issue, but it does say in a couple of 
places that the server MUST NOT remove a subscription even if the mailbox with 
that name doesn't exist, which makes renaming subscriptions a bit unclear. I'll 
check in with the authors of draft-ietf-extra-imap4rev2 and ask for this to be 
clarified next time around!

> A diff between the master (replication client) .sub file and the slave’s one 
> is (mx5 is the master, the client and 6 the slave): 
> 
> --- subscripciones-mx5c/parta.partb.sub 2019-07-10 08:47:29.000000000 +0200
> +++ subscripciones-mx6c/parta.partb.sub 2019-07-10 08:48:08.000000000 +0200
> 
> +domain.com!user.parta^partb.Archives.2019.TRAFICO.CHINA.XINGANG
> -domain.com!user.parta^partb.Trash.XINGANG
> 
> Perhaps a move_subscription to one or sync_apply_changesub should be forced 
> in order to fix it?. I have seen issues with Outlook 2016 and Thunderbird… 
> both mua… perhaps by RFC they should send the SUB command but… it’s the only 
> theory I could arrive to… I have a ton more cases like this one.. Data gets 
> properly handled but subscriptions have this issue (perhaps we could say is a 
> mua issue but….)..

Bron.
--
 Bron Gondwana, CEO, Fastmail Pty Ltd
 br...@fastmailteam.com

----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

Reply via email to