On Wed, Apr 19, 2006 at 05:48:42PM -0400, Bill Sommerfeld
wrote:> with the integration of
>
> 6410698 ZFS metadata needs to be more highly replicated (ditto blocks)
>
> is there any way using zdb or some other tool to observe this in action?
>
> for instance, after a pool upgrade, to see what fraction of a
pool''s
> metadata has been rewritten to use ditto blocks, or how much space has
> been taken up by ditto blocks?
You can get an idea of how much space is taken up by running ''zdb
-bbb''.
On non-raidz pools, the inflation from PSIZE to ASIZE is the amount of
space taken up by ditto blocks (and gang blocks, but those are
exceedingly rare). If you are using raidz, the raidz inflation factor
(eg. +33% on a 4-disk raidz) is also reflected in the PSIZE-to-ASIZE
inflation.
I don''t think that we track what fraction of the metadata that is using
ditto blocks, but you could figure it out based on the above
information, plus the expected ratios:
type expansion ratio due to ditto blocks
L0 ZFS plain file 1x (no ditto block)
L1+ ZFS plain file 2x (one extra copy)
all other ZFS 2x (one extra copy)
all others 3x (two extra copies)
For example, if your "ZFS directory" PSIZE-to-asize ratio is 1.75x,
then
75% of those blocks have an extra copy.
If you write a script to compute the overall fraction, please share it
with the list! :-)
--matt