DBERROR: skiplist recovery mailboxes.db 0090 - suddenly all is failing!

Andrew Morgan morgan at orst.edu
Thu Feb 15 12:15:53 EST 2007


On Thu, 15 Feb 2007, Gregor Wenkelewsky wrote:

> Hi there,
>
> Cyrus has been installed here just a few weeks ago, and after some hard 
> days it was working smoothly and very well. Until suddenly, sadly today 
> it started to fail completely with this error message in mail.warn, 
> mail.error and syslog:
>
> cyrus/imap[..]: DBERROR: skiplist recovery /var/lib/cyrus/mailboxes.db: 0090 should be ADD or DELETE
> cyrus/imap[..]: DBERROR: opening /var/lib/cyrus/mailboxes.db: cyrusdb error
>
> There was a post by Florin Andrei on March 12 2004 in which he described 
> a similar problem and a solution, but his setting is much different to 
> mine and I can't just follow to that. My setup is: cyrus-imapd2.2.13, 
> postfix, Xubuntu 6.10 and I have not one, but currently 20 users and 
> plans are for about 500.
>
> As I found out from the logs, first time the error occured this morning 
> was after I was rebooting the system once. The log showed no failures 
> during the night, i.e. multiple squatter runs with no errors. ((BTW, for 
> a low-end server PC with up to 500 accounts and no intention to store 
> huge messages or files - the mail system is for use with SquirrelMail in 
> a grammar school - to what setting should I set squatter, if at all?))
>
> I guess the error was created when shutting down and restarting, so I 
> show here the entries before and after that.

You'll need to fix the corruption of the mailboxes.db file.  It is a 
skiplist format file in your case, so do a google search for 
"skiplist.py".  You'll find a python utility that can do some better 
recovery than the cyrus tools.  The example is for cyrus seen-state files, 
but the same should work on the mailboxes.db as well.

You should also setup a cronjob to dump the mailboxes.db file to plaintext 
periodically (so it can be backed up).  Something like this works here:

58 * * * * cyrus /usr/local/cyrus/bin/ctl_mboxlist -d > /var/spool/cyrus/config/mailboxes.db.dump

Hope this helps!

 	Andy


More information about the Info-cyrus mailing list