Cyrus 2.3.8 to 2.5.6

Giuseppe Ravasio (LU) giuseppe_ravasio at
Fri Jan 8 11:40:52 EST 2016

I'm testing the migration of a quite large IMAP server from 2.3.8 to the
latest version.

I'm syncing:
- mailboxes partitions
- sieve
- var/lib/imap/user
- var/lib/imap/quota
- var/lib/imap/annotations.db

After the sync:
- recompile sieve scripts
- ctl_mboxlist -u </root/mailboxes.txt
- ctl_cyrusdb -r
- tls_prune
- ctl_cyrusdb -c
- cyr_expire -E 3

I know that for fully upgrade the server I need also to:
1- run "reconstruct -V max"
2- run "quota -f"

But the reconstruct its a very long task and I'm planning to put the
server online and than run reconstruct without this downtime (as stated
in the changelog for the 2.5.0).

All seems to work well, but if a user tries to move mails into a non
reconstructed folder i get this message in the logs:

cyrus/imaps[11803]: Fatal error: Internal error: assertion failed:
imap/mailbox.c: 2846: !message_guid_isnull(&record->guid)

cyrus/master[5994]: process type:SERVICE name:imaps
path:/usr/local/lib/cyrus/bin/imapd age:43.479s pid:11803 exited, status 75

The files will be moved to the new folder and sometimes reappears in the
original folder, other times disappears whithout beeing shown with:
unexpunge -l $FOLDER

It's possible to insert expernal messages in thoose old mailbox but It's
not possible to delete because the message reappears and the error above
is shown in the logs.
If I try to delete with SHIFT-DEL the message disappears from
Thunderbird, the error is shown in the logs, the file is still on the
disk but "unexpunge -l" doesn't show the missing email.

It's a bug or I'm not supposed to open the service until the full

it also get

deleted from the client (Thunderbird) from the original one, but thoose
mail aren't sown via IMAP until the reconstruct.

More information about the Info-cyrus mailing list