On Mon, Jan 16, 2012 at 11:34 AM, Jim Klimov <jimkli...@cos.ru> wrote:
> 2012-01-16 23:14, Matthew Ahrens пишет: > >> On Thu, Jan 12, 2012 at 5:00 PM, Jim Klimov <jimkli...@cos.ru >> <mailto:jimkli...@cos.ru>> wrote: >> >> While reading about zfs on-disk formats, I wondered once again >> why is it not possible to create a snapshot on existing data, >> not of the current TXG but of some older point-in-time? >> >> >> It is not possible because the older data may no longer exist on-disk. >> For example, you want to take a snapshot from 10 txg's ago. But since >> then we have created a new file, which modified the containing >> directory. So we freed the directory block from 10 txg's ago. That >> freed block is then a candidate for reallocation. >> >> Existence of old uberblocks in the ring buffer does not indicate that >> the data they reference is still valid. This is the reason that "zpool >> import -F" does not always work. >> > > Hmmm... the way I got it (but again have no prooflinks handy) > was that ZFS "recently" got a deferred-reuse feature to just > guarantee those rollbacks, basically. I am not sure which > builds or distros that might be included in. > > If you authoritatively say it's not there (or not in illumos), > I'm going to trust you ;) > It's definitely not there in Illumos. See TXG_DEFER_SIZE. There was talk of changing it at Oracle, don't know if that ever happened. If you have a S11 system you could probably use mdb to look at the size of the ms_defermap. --matt
_______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss