monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] how to recover damaged database?


From: Nathaniel Smith
Subject: Re: [Monotone-devel] how to recover damaged database?
Date: Thu, 11 May 2006 00:12:58 -0700
User-agent: Mutt/1.5.11

On Sun, May 07, 2006 at 05:11:13PM -0500, Kelly F. Hickel wrote:
>    While testing the import of our CVS repo, the machine was rebooted.  After
>    the reboot, when I tried to continue importing, I received the message
>    below.  In this instance, I could just start over, but it raises the
>    question of what would happen if we were using this for real? We'd have a
>    daily backup of course, but if this turned out to be unrecoverable, that
>    would be "bad" (I realize that I have no reason to believe it's
>    unrecoverable, just wondering)....

Monotone's database is fully ACID[1] transactional.  It takes measures
that mean in theory, and as far as we know in practice, it is not
possible to corrupt it through reboots or power failures or any other
such thing.  It Just Works.  (Put another way, the recovery mechanism
is always present and always runs quickly and silently when needed.
If you see any files named like "foo.mtn-journal", leave them be,
they're the recovery mechanisms record of how to recover :-).)

Of course, you can still have the disk go bad, or bad memory, or a
software bug somewhere (even in the OS) that corrupts bytes in flight,
or... so backups are indeed good, and monotone's design tries to make
it very hard to actually lose information, whether you get your
backups right or not...

Anyway, I suspect the problem is a small bug in the cvs importer, and
nothing to do with the reboot at all.  If you try doing the import
into a fresh db, do you still get the same message?

[1] http://www.wikipedia.com/wiki/ACID , in case you're not a DB
guy...

Hope that helps,
-- Nathaniel

-- 
Sentience can be such a burden.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]