DBERROR: skiplist recovery errors

Lawrence Greenfield leg+ at andrew.cmu.edu
Mon Dec 23 16:00:42 EST 2002


   Date: Mon, 23 Dec 2002 14:43:17 -0500
   From: "John A. Tamplin" <jtampli at sph.emory.edu>

   I have a user mailbox that is genering thousands of these same "DBERROR: 
   skiplist recovery: xxxx should be ADD or DELETE" messages.  This machine 
   hasn't been rebooted, and Cyrus hasn't even been restarted since this 
   particular user was converted (on the Cyrus side, conversion entails 
   simply doing multi-appends via IMAP).  This is 2.1.11 on Solaris 9.

   It seems like this has to be some bug in the skiplist code.  This user 
   does have one of the larger mailboxes (1121 folders with 534M of total 
   mail), but there are some with larger.  What information would be 
   helpful to track down the problem?

Yep, it's undoubtably a bug in the skiplist code. I'm not sure what's
the best way of tracking this down. I'm beginning to think it might
have something to do with the checkpointing code, since it happened
more often right after we switched to skiplists, which would mean
files were smaller and were getting checkpointed more frequently.

(The skiplist checkpoint interval depends on the size of the base
data.)

   Is there any way to recover the seen state of this user?  I know I can 
   delete the .seen file and it will recreate it, but I am sure this will 
   be an inconvenience to this user and why would I expect it to not happen 
   again?

The best way is to truncate the file at position xxxx. This will at
least give the user their seen state as of this point.

I haven't seen this on our servers in quite a while. It doesn't seem
to happen frequently or strike any one user more regularly.

Sorry I can't be more helpful,
Larry





More information about the Info-cyrus mailing list