Hello Michael, Zitat von Michael Menge <michael.me...@zdv.uni-tuebingen.de>:
Hi,i discovered that my patch for bug #3862 (rollback db changes on mupdate failure), which was includes in cyrus-imapd 2.4.19, 2.5.8 and 3.0.0-beta2, has a bug if amailbox is moved to an other partition and a rollback is needed.For the rollback my old patch did recreate the old entry and then delete the new entry. But in case of moving the mailbox to a other partition the oldname and newname arethe same, so the mailbox will be deleted for the mailboxes.dbRecovery form this error is tricky. Reconstruct (reconstruct -p oldpartiton "mailboxname")will fail because the mupdate master still has the entry the the mailbox. So you have to manually add the mailbox to the mailboxes.db on the backend, or delete the mailbox from the mailboxes.db on the mupdate master.Attached is a patch for 2.4.20 which will reverse the order, so the "new" mailbox isdeleted first and then the old entry is recreated. The same is needed for the other branches.
Btw: For me it looks like we have a wrong test for removing (or not), see: https://build.opensuse.org/package/view_file/home:nixda:devel/cyrus-imapd-3.0/cyrus-imapd-3.0.2-mbx_rename.patch?expand=1 What do you think about this patch? -- Liebe Gruesse, with best regards Stephan Lauffer Pedagogical University Freiburg - Germany http://www.ph-freiburg.de/zik/ Fon/ Fax: +49 761 682 -559/ -486
smime.p7s
Description: S/MIME-Signatur