Dear Mark, Thanks for the help. Your idea worked a treat. I also had to mess around with the files in the db directory but I worked all that out it seemed to work okay. Just in case anyone else wants to do that (as I've copied this to the list). Here's what I did to convert the seen database from Berkeley DB to skiplist.
1. stop the server 2. run db_recover in var/imap/db 3. rm the log file from var/imap/db and any left over __db files 4. cd var/imap/user 5. run a script which for each seen file in every directory did a db_dump and a db_load 6. repeat steps 2 and 3 at this point 7. run a script which Mark suggested that converts every file from BDB to skiplist. Once all the conversions are complete rename all the skiplist files to replace the seen files. 8. repeat steps 2 and 3 9. now edit impad.conf and set seenstate_db: to skiplist 10. Make sure that the var/imap/db directory contains nothing other than the file called skipstamp. 11. start master and all should be fine. There should be no errors in imapd.log about PANICs or DB errors. This worked for me anyway so perhaps it might be useful for others. I risked it because the seen files could be lost and it wouldn't be a total disaster. Perhaps on other databases it might not be much good. Best wishes..... Colin On Thu, 15 Apr 2004, Mark Keasling wrote: > Did you try converting all of the ".seen" berkeley db files to skiplist before > moving them? After stopping cyrus, something like this might work for you: > > cd var/user > for f in */*.seen > do > cvt_cyrusdb `pwd`/$f berkeley `pwd`$f.new skiplist > done > --- Cyrus Home Page: http://asg.web.cmu.edu/cyrus Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html