On 2016-04-19 09:58, Duncan wrote:
> Dmitry Katsubo posted on Tue, 19 Apr 2016 07:45:40 +0200 as excerpted:
>
>> Actually btrfs restore has recovered many files, however I was not able
>> to run in fully unattended mode as it complains about "looping a lot".
>> Does it mean that files are corrupted / not correctly restored?
>
> As long as you tell it to keep going each time, the loop complaints
> shouldn't be an issue. The problem is that the loop counter is measuring
> loops on a particular directory, because that's what it has available to
> measure. But if you had a whole bunch of files in that dir, it's /going/
> to loop a lot, to restore all of them.
>
> I have one cache directory with over 200K files in it. They're all text
> messages from various technical lists and newsgroups (like this list,
> which I view as a newsgroup using gmane.org's list2news service) so
> they're quite small, about 5 KiB on average by my quick calculation, but
> that's still a LOT of files for a single dir, even if they're only using
> just over a GiB of space.
>
> I ended up doing a btrfs restore on that filesystem (/home), because
> while I had a backup, restore was getting more recent copies of stuff
> back, and that dir looped a *LOT* the first time it happened, now several
> years ago, before they actually added the always option.
I have the same situation here: there is a backup, but the most recent
modifications in files are preferable.
> The second time it happened, about a year ago, restore worked much
> better, and I was able to use the always option. But AFAIK, always only
> applies to that dir. If you have multiple dirs with the problem, you'll
> still get asked for the next one. But it did vastly improve the
> situation for me, giving me only a handful of prompts instead of the very
> many I had before the option was there.
Yes, this is exactly the problem discussed a while ago. Would be nice if
"btrfs restore -i" applies "(a)lways" option to all questions or there is
a separate option for that ("-y").
For me personally "looping" is too low-level problem. System administrators
(that are going to use this utility) should operate with some more reasonable
terms. If "looping" is some analogy of "time consumption" then I would say
that during restore time does not matter so much: I am ready to wait for 1
minute until a specific file is restored. So I think not the number of loops
but number of time spent should be measured.
Also I have difficulties in finding out what files have not been restored
due to uncorrectable errors. As I cannot redirect the output of
"btrfs restore" and it does not print the final stats, I cannot tell what
files have to be restored from backup.
> (The main problem triggering the need to run restore for me, turned out
> to be hardware. I've had no issues since I replaced that failing ssd,
> and with a bit of luck, won't be running restore again for a few years,
> now.)
I would be happy if I am able to replace the failing drive on the fly, without
stopping the system. Unfortunately I cannot do that due to kernel crashes :(
btrfs is still not resistant to these corner cases.
--
With best regards,
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html