FreeBSD ZFS
The Zettabyte File System
Data Fields

zap_stats Struct Reference

#include <zap.h>

Data Fields

uint64_t zs_ptrtbl_len
 Size of the pointer table (in number of entries).
uint64_t zs_blocksize
 size of zap blocks
uint64_t zs_num_blocks
 The number of blocks used.
Pointer table values from zap_ptrtbl in the zap_phys_t
uint64_t zs_ptrtbl_nextblk
 next (larger) copy start block
uint64_t zs_ptrtbl_blks_copied
 number source blocks copied
uint64_t zs_ptrtbl_zt_blk
 starting block number
uint64_t zs_ptrtbl_zt_numblks
 number of blocks
uint64_t zs_ptrtbl_zt_shift
 bits to index it
Values of the other members of the zap_phys_t
uint64_t zs_block_type
 ZBT_HEADER.
uint64_t zs_magic
 ZAP_MAGIC.
uint64_t zs_num_leafs
 The number of leaf blocks.
uint64_t zs_num_entries
 The number of zap entries.
uint64_t zs_salt
 salt to stir into hash function
Histograms

For all histograms, the last index (ZAP_HISTOGRAM_SIZE-1) includes any values which are greater than what can be represented.

For example zs_leafs_with_n5_entries[ZAP_HISTOGRAM_SIZE-1] is the number of leafs with more than 45 entries.

uint64_t zs_leafs_with_2n_pointers [ZAP_HISTOGRAM_SIZE]
 zs_leafs_with_n_pointers[n] is the number of leafs with 2^n pointers to it.
uint64_t zs_blocks_with_n5_entries [ZAP_HISTOGRAM_SIZE]
 zs_leafs_with_n_entries[n] is the number of leafs with [n*5, (n+1)*5) entries.
uint64_t zs_blocks_n_tenths_full [ZAP_HISTOGRAM_SIZE]
 zs_leafs_n_tenths_full[n] is the number of leafs whose fullness is in the range [n/10, (n+1)/10).
uint64_t zs_entries_using_n_chunks [ZAP_HISTOGRAM_SIZE]
 zs_entries_using_n_chunks[n] is the number of entries which consume n 24-byte chunks.
uint64_t zs_buckets_with_n_entries [ZAP_HISTOGRAM_SIZE]
 zs_buckets_with_n_entries[n] is the number of buckets (each leaf has 64 buckets) with n entries.

Detailed Description

Definition at line 403 of file zap.h.


Field Documentation

ZBT_HEADER.

Definition at line 436 of file zap.h.

uint64_t zap_stats::zs_blocks_n_tenths_full[ZAP_HISTOGRAM_SIZE]

zs_leafs_n_tenths_full[n] is the number of leafs whose fullness is in the range [n/10, (n+1)/10).

Definition at line 472 of file zap.h.

uint64_t zap_stats::zs_blocks_with_n5_entries[ZAP_HISTOGRAM_SIZE]

zs_leafs_with_n_entries[n] is the number of leafs with [n*5, (n+1)*5) entries.

In the current implementation, there can be at most 55 entries in any block, but there may be fewer if the name or value is large, or the block is not completely full.

Definition at line 466 of file zap.h.

size of zap blocks

Definition at line 411 of file zap.h.

uint64_t zap_stats::zs_buckets_with_n_entries[ZAP_HISTOGRAM_SIZE]

zs_buckets_with_n_entries[n] is the number of buckets (each leaf has 64 buckets) with n entries.

zs_buckets_with_n_entries[1] should be very close to zs_num_entries.

Definition at line 487 of file zap.h.

uint64_t zap_stats::zs_entries_using_n_chunks[ZAP_HISTOGRAM_SIZE]

zs_entries_using_n_chunks[n] is the number of entries which consume n 24-byte chunks.

(Note, large names/values only use one chunk, but contribute to zs_num_blocks_large.)

Definition at line 479 of file zap.h.

uint64_t zap_stats::zs_leafs_with_2n_pointers[ZAP_HISTOGRAM_SIZE]

zs_leafs_with_n_pointers[n] is the number of leafs with 2^n pointers to it.

Definition at line 457 of file zap.h.

ZAP_MAGIC.

Definition at line 437 of file zap.h.

The number of blocks used.

Note that some blocks may be wasted because old ptrtbl's and large name/value blocks are not reused. (Although their space is reclaimed, we don't reuse those offsets in the object.)

Definition at line 419 of file zap.h.

The number of zap entries.

Definition at line 439 of file zap.h.

The number of leaf blocks.

Definition at line 438 of file zap.h.

number source blocks copied

Definition at line 426 of file zap.h.

Size of the pointer table (in number of entries).

This is always a power of 2, or zero if it's a microzap. In general, it should be considerably greater than zs_num_leafs.

Definition at line 409 of file zap.h.

next (larger) copy start block

Definition at line 425 of file zap.h.

starting block number

Definition at line 427 of file zap.h.

number of blocks

Definition at line 428 of file zap.h.

bits to index it

Definition at line 429 of file zap.h.

salt to stir into hash function

Definition at line 440 of file zap.h.


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines