Chris Mason wrote:

On Thu, 2004-04-22 at 13:51, Hans Reiser wrote:


Chris Mason wrote:



On Thu, 2004-04-22 at 09:00, Jure Pečar wrote:




Hi all,

Is it theoretically posible?

Like, does it need a drastic redesing of reiserfs or just sufficient $$
directed to the team to be implemented?


Because i think that reiserfsck --check in 12h + --rebuild-tree in 18h is
still waaay too much downtime for a 500gb mail server...




Online check is easy, just use lvm or evms to make a snapshot and then
check the snapshot.




Requires that users use lvm before discovering the need for fsck, but, yes. What would be ideal would be some support for finding the inconsistency on the snapshot, and then fixing it on the real fs using the information learned from the snapshot fsck.



Which should be possible, espeically for corruptions at the leaf levels. Things like incorrect i_size, pointers to files that don't exist, etc. Corruptions that require a full blow rebuild-tree will be much harder.

I was wrong to say that an online rebuild-tree would be impossible, but
it certainly does seem tricky.  Basically you could freeze the old tree,
using it for readonly lookups.  Rebuild to new tree in the background,
and verify things you find in the old tree in the new tree (to catch a
file that has been deleted while the FS was mounted but is present in
the old tree).

-chris






rebuild-tree would likely be a major engineering effort which would require funding from someone who cared enough to pay for it....., finding inconsistencies on a snapshot and applying them to a live system would be less difficult but still substantive work.

Reply via email to