On Wed, May 14, 2014 at 12:09:38PM -0600, Chris Murphy wrote: > > On May 14, 2014, at 7:50 AM, Marc MERLIN <m...@merlins.org> wrote: > > > So, I had btrfs_pool1 that was trashed/lost as discussed here recently. > > > > I did btrfs send btrfs_pool2/root_ro.date | btrfs receive /mnt/btrfs_pool1 > > > > Then btrfs subvolume snapshot root_ro.date root > > > > Now, after I delete root_ro.date on btrfs_pool1, shouldn't root become a > > parent subvolume? > > There's no explicit hierarchy like this. There's no state "parent" or > "child". > > If a subvolume is created by snapshotting another subvolume, the new > subvolume refers to the uuid of its source as the parent uuid. And > the original subvolume, at least in the UI, contains a list of its > snapshots but I don't know that this metadata is literally associated > with the subvolume rather than inferred from its snapshots, all of > which contain the "parent" subvolume's uuid as a parent_uuid.
Right. So basically the parent UUID can go orphanned, which I found a bit surprising. > > Right now, I have: > > legolas:/mnt/btrfs_pool1# btrfs subvolume list -q . > > ID 390 gen 5954 top level 5 parent_uuid > > faea7df8-d51a-6b4b-994b-887d55267cce path root > > legolas:/mnt/btrfs_pool1# btrfs subvolume list -u . |grep > > faea7df8-d51a-6b4b-994b-887d55267cce > > legolas:/mnt/btrfs_pool1# > > > > Is it possible not to have a parent? > > > > If so, shouldn't you become a parent at that time? > > No. The listed subvolume parent_uuid is the subvolume uuid for > now deleted subvolume root_ro.date. Even though it's deleted, the > subvolume created from it still retains the parent_uuid reference. Yep. If you think about daemonized processed that get inherited by init, shouldn't parent-less snapshots change their parent uuid to '-' > If you snapshot root, you could say it "becomes a parent" but it's > only a metaphor it's not something that literally happens on disk. All > I'm aware of that happens is the new subvolume gets its own uuid and > its parent_uuid is set to match the subvolume uuid it was created > from. You are correct. The blocks don't care who is the parent and child subvolume, they're just references. But for management purposes by us humans :) it's useful to know what's going on. Would a developer agree to making parent less subvolumes have their parent become '-'? Thanks, Marc -- "A mouse is a device used to point at the xterm you want to type in" - A.S.R. Microsoft is to operating systems .... .... what McDonalds is to gourmet cooking Home page: http://marc.merlins.org/ | PGP 1024R/763BE901 -- 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