rollback to archiving checkpoint? Need help!!

Michael Loftis mloftis at wgops.com
Tue Apr 5 00:24:06 EDT 2005



--On Tuesday, April 05, 2005 5:38 AM +0200 Alex Meier <cornflake4 at gmx.at> 
wrote:

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

I just told you, they don't.  The only way you'll recover mail is with 
proper backups *or* forensic recovery on the drive/filesystem itself.

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

No, being as there isn't any mail stored there.  The mail itself is all in 
the filesystem.


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




More information about the Info-cyrus mailing list