Hi Bron, thanks for responding On 23-08-15 12:10, Bron Gondwana wrote: > a) I'm SOOO glad that we got rid of Berkeley. > b) Berkeley, bah LOL. Agree, always trouble when building sendmail as well > > On Sun, Aug 23, 2015, at 11:38, Stefan Suurmeijer wrote: >> Hi all, >> >> I'm trying to migrate my old server to a new one. The old one is >> still running 2.2.13 and the new one 2.4.17. I'm running into >> trouble, however >> >> I used rsync to copy mailboxes, databases and sieve stuff to the >> new server >> >> I checked to see what type of database I was using. Most databases >> were already skiplist, except for deliver.db and tls_sessions.db. For >> some reason those two were still Berkeley. > So you pretty much have to have dumped all your DB files before you > upgraded, because it doesn't do upgrades nicely. You might be able > to use the db_upgrade program on them. My Ubuntu box has > db5.1_upgrade on it. > > The good news about these one is that you can delete them when the > server is shut down without losing anything of value :) > >> After I rsynced I ran reconstruct -n to see if it had anything to say. >> It did in fact: >> >> cyrus/reconstruct[5765]: Index upgrade: user.stefan.Spam (6 -> 12) (it >> did that for every mailbox) >> >> cyrus/reconstruct[5765]: DBERROR db5: BDB1538 Program version 5.3 >> doesn't match environment version 4.7 cyrus/reconstruct[5765]: >> DBERROR: dbenv->open '/var/lib/cyrus/db' failed: BDB0091 >> DB_VERSION_MISMATCH: Database environment version mismatch > With the server shut down: > > rm -rf /var/lib/cyrus/db > rm -f /var/lib/cyrus/deliver.db > rm -f /var/lib/cyrus/tls_sessions.db > > And of course change them to skiplist as well :) Ok, did that and deleted the files in db.backup1 and db.backup2 as well, also old berkeley stuff, and I figure deleting a backup is allright (if you still have the files on the original server ;-) ) Everything else seems to be skiplist already. What do you mean change them to skiplist? Do I need to re-create the files in skiplist format? (If so, how?) Or does Cyrus create them automatically if they don't exist? > >> I got that just once (or at least I didn't see it more often) >> >> And I saw this: cyrus/ctl_cyrusdb[20917]: converting >> /var/lib/cyrus/deliver.db from berkeley to skiplist > Yeah, if you've changed the config it will do that. It should be a good > thing, but the Berkeley environment can hold references to the old > berkeley DB still. Ok > >> Which seemed to be a good thing >> >> After that I tried to log in. Then the fun started >> >> First of: I use virtual domains. I have a default domain that I >> started out with, that was located under user (so not under a >> directory domain, just /path/to/cyrus/s/user/stefan >> >> I could't log into that account anymore: Cyrus couldn't find the user >> account. > Were you logging in as user@domain, or just 'user'? > >> However, users in the virtual domains (located under >> /path/to/cyrus/domain/s/somedomain.nl are able to login. >> >> I copied all settings from the old imapd.conf to the new one, so I >> figure someting has changed in the way virtual domains are handled. Do >> I need to move everything under domain now? > That or just log in with the raw username rather than domain. That's > for virtdomains: userid, I don't have a clue for the non-userid version. > This _might_ be a regression from 2.3 to 2.4. I figured this one out in the meantime: on the old server, for the default domain I just added users without a domain to saslsb. That doesn't seem to work anymore. Once I added the fully qualified users to sasldb I could login with the default domain as well. Problem solved > >> But then something even worse happened: after a reboot Cyrus >> completely freaked out: >> >> Aug 23 00:47:29 spice cyrus/master[24908]: about to exec >> /usr/sbin/cyrus Aug 23 00:47:29 spice cyrus/ctl_cyrusdb[24908]: >> DBERROR db5: BDB1521 Recovery function for LSN 91 3293614 failed Aug >> 23 00:47:29 spice cyrus/ctl_cyrusdb[24908]: DBERROR db5: BDB0061 >> PANIC: Invalid argument Aug 23 00:47:29 spice >> cyrus/ctl_cyrusdb[24908]: DBERROR: critical database situation Aug 23 >> 00:47:29 spice cyrus/master[24906]: process 24908 exited, status 75 >> Aug 23 00:47:29 spice cyrus/master[24911]: about to exec >> /usr/sbin/cyrus Aug 23 00:47:29 spice cyrus/cyr_expire[24911]: DBERROR >> db5: BDB0060 PANIC: fatal region error detected; run recovery Aug 23 >> 00:47:29 spice cyrus/cyr_expire[24911]: DBERROR: critical database >> situation Aug 23 00:47:29 spice cyrus/master[24906]: process 24911 >> exited, status 75 Aug 23 00:47:29 spice cyrus/master[24914]: about to >> exec /usr/sbin/cyrus Aug 23 00:47:29 spice cyrus/tls_prune[24914]: >> DBERROR db5: BDB0060 PANIC: fatal region error detected; run recovery >> Aug 23 00:47:29 spice cyrus/tls_prune[24914]: DBERROR: critical >> database situation Aug 23 00:47:29 spice cyrus/master[24906]: process >> 24914 exited, status 75 Aug 23 00:47:29 spice cyrus/master[24906]: >> unable to setsocketopt(IP_TOS): Operation not supported Aug 23 >> 00:47:29 spice cyrus/master[24906]: unable to setsocketopt(IP_TOS): >> Operation not supported Aug 23 00:47:29 spice cyrus/master[24906]: >> ready for work Aug 23 00:47:29 spice cyrus/master[24917]: about to >> exec /usr/sbin/cyrus Aug 23 00:47:29 spice cyrus/master[24918]: about >> to exec /usr/lib/cyrus/bin/notifyd Aug 23 00:47:29 spice >> cyrus/notify[24918]: DBERROR db5: BDB0060 PANIC: fatal region error >> detected; run recovery Aug 23 00:47:29 spice cyrus/notify[24918]: >> DBERROR: critical database situation Aug 23 00:47:29 spice >> cyrus/master[24906]: process 24918 exited, status 75 Aug 23 00:47:29 >> spice cyrus/master[24906]: service notify pid 24918 in READY state: >> terminated abnormally Aug 23 00:47:29 spice cyrus/master[24920]: about >> to exec /usr/lib/cyrus/bin/notifyd Aug 23 00:47:29 spice >> cyrus/ctl_cyrusdb[24917]: DBERROR db5: BDB0060 PANIC: fatal region >> error detected; run recovery Aug 23 00:47:29 spice >> cyrus/ctl_cyrusdb[24917]: DBERROR: critical database situation Aug 23 >> 00:47:29 spice cyrus/master[24906]: process 24917 exited, status 75 >> Aug 23 00:47:29 spice cyrus/notify[24920]: DBERROR db5: BDB0060 PANIC: >> fatal region error detected; run recovery Aug 23 00:47:29 spice >> cyrus/notify[24920]: DBERROR: critical database situation Aug 23 >> 00:47:29 spice cyrus/master[24906]: process 24920 exited, status 75 >> Aug 23 00:47:29 spice cyrus/master[24906]: service notify pid 24920 in >> READY state: terminated abnormally Aug 23 00:47:29 spice >> cyrus/master[24922]: about to exec /usr/lib/cyrus/bin/notifyd Aug 23 >> 00:47:29 spice cyrus/notify[24922]: DBERROR db5: BDB0060 PANIC: fatal >> region error detected; run recovery Aug 23 00:47:29 spice >> cyrus/notify[24922]: DBERROR: critical database situation Aug 23 >> 00:47:29 spice cyrus/master[24906]: process 24922 exited, status 75 >> Aug 23 00:47:29 spice cyrus/master[24906]: service notify pid 24922 in >> READY state: terminated abnormally Aug 23 00:47:29 spice >> cyrus/master[24923]: about to exec /usr/lib/cyrus/bin/notifyd Aug 23 >> 00:47:29 spice cyrus/notify[24923]: DBERROR db5: BDB0060 PANIC: fatal >> region error detected; run recovery Aug 23 00:47:29 spice >> cyrus/notify[24923]: DBERROR: critical database situation Aug 23 >> 00:47:29 spice cyrus/master[24906]: process 24923 exited, status 75 >> Aug 23 00:47:29 spice cyrus/master[24906]: service notify pid 24923 in >> READY state: terminated abnormally >> >> This went on until I killed Cyrus. Dozens of lines of log per second. >> Can anyone tell me what went wrong? Cyrus wouldn't exit gracefully, so >> I stopped it with a kill -9 before rebooting, did that cause the >> problem? >> >> I actually repeated the entire process and got exactly the same result >> >> Any help would be GREATLY appreciated > If you follow the steps above to kill the BDB environment (again, with Cyrus > entirely stopped) you should be OK. Ok. Do I need to run a reconstruct before starting? Since it did al those index upgrades? I'm leaning toward yes, but would love to hear from you ;-) Have resolved to look closer into Cyrus anyway. The old server has run without any trouble for over 3 years, makes one lazy ;-). Good software though I guess Thanks Stefan ---- 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