14.08.2018 18:16, Hans van Kranenburg пишет: > On 08/14/2018 03:00 PM, Dmitrii Tcvetkov wrote: >>> Scott E. Blomquist writes: >>> > Hi All, >>> > >>> > [...] >> >> I'm not a dev, just user. >> btrfs-zero-log is for very specific case[1], not for transid errors. >> Transid errors mean that some metadata writes are missing, if >> they prevent you from mounting filesystem it's pretty much fatal. If >> btrfs could recover metadata from good copy it'd have done that. >> >> "wanted 2159304 found 2159295" means that some metadata is stale by >> 9 commits. You could try to mount it with "ro,usebackuproot" mount >> options as readonly mount is less strict. If that works you can try >> "usebackuproot" without ro option. But 9 commits is probably too much >> and there isn't enough data to rollback so far. > > Keep in mind that a successful mount with usebackuproot does not mean > you're looking at a consistent filesystem. After each transaction > commit, disk space that is no longer referenced is immediately freed for > reuse. >
With all respect - in this case btrfs should not even pretend it can do "usebackuproot". What this option is for then? > So, even if you can mount with usebackuproot, you have to hope that none > of the metadata blocks that were used back then have been overwritten > already, even the ones in distant corners of trees. A full check / scrub > / etc would be needed to find out. >