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
zfs-discuss mailing list