Hi,

So, I've found my self in a pickle after following this steps:
1. trying to migrate an array to different system, it became apparent
that importing array there was not possible to import it because I've
had a very large amount of snapshots (every 15 minutes during office
hours amounting to few K) so I've had to remove snapshots for main
data storage.
2. while playing with live array, it become apparent that some bright
spark implemented a "delete all sub-volumes while removing array from
system" ... needles to say that this behaviour is unexpected to say al
least ... and I wanted to punch somebody in face.
3. the backup off-site server that was making backups every 30 minutes
was located in CEO house and his wife decide that it's not necessary
to have it connected

(laughs can start roughly here)

So I've got array with all the data there (theoretically COW, right ?)
with additional of plethora of snapshots (important data was snapped
every 15 minutes during a office hours to capture all the changes,
other sub-volumes were snapshoted daily)

This occurred roughly on 4-12-2016.

Since then I was trying to rescue as much data as I can, luckily I
managed to get a lot of data from snapshots for "other than share"
volumes (because those were not deleted :/) but the most important
volume "share" prove difficult. This subvolume comes out with a lot of
errors on readout with "btrfs restore /dev/sda /mnt2/temp2/ -x -m -S
-s -i -t".

Also for some reason I can't use a lot of root blocks that I find with
btrfs-find-root ..

To put some detail here:
btrfs-find-root -a /dev/sda
Superblock thinks the generation is 184540
Superblock thinks the level is 1
Well block 919363862528(gen: 184540 level: 1) seems good, and it
matches superblock
Well block 919356325888(gen: 184539 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919343529984(gen: 184538 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920041308160(gen: 184537 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919941955584(gen: 184536 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919670538240(gen: 184535 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920045371392(gen: 184532 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920070209536(gen: 184531 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920117510144(gen: 184530 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1 <<<---- here
stuff is gone
Well block 920139055104(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920139022336(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920138989568(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920138973184(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920137596928(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920137531392(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920137515008(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920135991296(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920135958528(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920135925760(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920135827456(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920135811072(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920133697536(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920133664768(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920133337088(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920133206016(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920132976640(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920132878336(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920132845568(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920128045056(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920127946752(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920127897600(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920127881216(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920127864832(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920127848448(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 920127799296(gen: 184511 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919815143424(gen: 184508 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919814569984(gen: 184508 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919811866624(gen: 184508 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919803232256(gen: 184496 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919712989184(gen: 184455 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919711891456(gen: 184455 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919706271744(gen: 184455 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919703568384(gen: 184455 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919699865600(gen: 184455 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 919647092736(gen: 184455 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417026879488(gen: 184334 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1 <<--- I can
only use that with btrfs restore and it's month old
Well block 1417025896448(gen: 184333 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417029484544(gen: 184332 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417029320704(gen: 184332 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417029173248(gen: 184332 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417027616768(gen: 184332 level: 0) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417024831488(gen: 184331 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417021079552(gen: 184330 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417014001664(gen: 184329 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417011970048(gen: 184328 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
Well block 1417009758208(gen: 184327 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level:
... rest of lines omitted to not trash the list to much.

this line:
Well block 920117510144(gen: 184530 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
is where stuff is missing,

and this line:
Well block 1417026879488(gen: 184334 level: 1) seems good, but
generation/level doesn't match, want gen: 184540 level: 1
is the only line that physically work with
btrfs restore /dev/sda /mnt2/temp2/ -x -m -S -s -i -t


as you can see there is a vast "generation hole" between 184530 and
184334 ... more 200 generations ... and this results in only being
able to access data that is month old :( and some of it is strangelly
corrupted :(
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to