(this is actually response to Jules Agee's posting as well, but as en email 
cannot have multiple addressees...)

>I should also add the logs are not for rollback purposes, they're for 
>consistent recovery of the system to a known working state, IE to recover 
>from unclean shutdowns.

I understand that the logs are just for recovery purposes, but I'm wondering if 
I could use them for, let's say, simulating a crash and let the system do a 
"consistent recovery" which actually is a rollback. I am not sure if this is 
possible. Even if it is not very gentleman-like, it is very much an option 
because the damage in case of a complete data loss would be quite severe.

So, I noticed that there are some log (?) files in the db directory, named 
__db.001 to __db.005, one of which has 18 MB:

-rw-------    1 cyrus    mail         8192 2005-03-11 16:50 __db.001
-rw-------    1 cyrus    mail       270336 2005-03-11 16:50 __db.002
-rw-------    1 cyrus    mail        98304 2005-03-11 16:50 __db.003
-rw-------    1 cyrus    mail     18563072 2005-03-11 16:50 __db.004
-rw-------    1 cyrus    mail        32768 2005-03-11 16:50 __db.005
-rw-------    1 cyrus    mail       211602 2005-04-05 04:56 log.0000000002
-rw-------    1 cyrus    mail            4 2005-03-11 16:50 skipstamp

Hm...I'm asking myself what the __db.004 would contain? 18 MB seem to be a 
little too much for just storing metadata - but could be, if the content of 
__db.XXX is never expunged but always appended. 
[...5 mins later...] I just took a look at the __db.004 file and it seems not 
promising at all, for the majority of the 18 MB it seems to contain only a 
sequence of approx. 70 bytes (mostly null values), repeated over and over again.

So to me this seems to be the only weak, distant glimpse of hope: IF the 
_db.XXX files contain mail bodies in some compressed/internal representation, 
it could be possible to extract them from there, at least most of them.

Could there be a way to extract to extract the mail bodies from the __db.XXX 
files (for example by forcing the system into an inconsistent state so that 
cyrus uses its binary checkpoint and archiving files to recover) - or are the 
mail bodies _really_ just stored in the individual files (which have been 
definitely deleted) as Jules Agee pointed out?

What do you think - imagine you are allowed to do anything and not restricted 
to good manners or "clean" procedures. What else could I try?

Alex



---
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

Reply via email to