Re: Rebuilding chunk root?
From: Sami Haahtinen <hidden>
Date: 2012-09-24 16:43:38
On Mon, Sep 24, 2012 at 6:12 PM, David Sterba [off-list ref] wrote:
On Mon, Sep 24, 2012 at 03:02:39PM +0100, Hugo Mills wrote:quoted
Out of interest, does mounting with -o recovery help at all? (I'm not expecting it to do much if your chunk tree's gone, but it might do something).The -o recovery has access to the respective tree roots, but the contents may be destroyed already. The chunk tree is not deep, I can see height 1 on a 6 disk array (though lightly used, 1 node, 8 leaves) and 3 disk array (1/7 TB used, 1 node, 29 leaves). So it's quite a small amount of data to destroy the chunktree completely, COW will lower the chances a bit.
Yeah, the whole tree is gone, I'm pretty sure of it since the first 20-50GB has been wiped from the drive and the mentioned address is in the beginning of that part. I just wonder if there is any chance of the older versions of the chunk tree still being somewhere and how to find them. I doubt it's an easy feat though.
Rebuilding from scratch does not look simple, the available information is stored in BLOCK_GROUP_ITEMs or INODE_ITEMs and covers portions of the chunks. Given that the device tree would be probably damaged as well, the amount of information to do cross-check is not high. Maybe replaying the chunk creation logic can save some guesswork.
Replaying chunk creation logic would not help that much, since the drive has been resized a few times and had other operations that have modified the chunk tree as well. The array itself is not that complex (2 drives), but it's still not as simple as a single drive array. Regards, -- Sami Haahtinen Bad Wolf Oy +358443302775