libaaruformat 1.0
Aaru Data Preservation Suite - Format Library
Loading...
Searching...
No Matches
StripeDataBlockEntry Struct Reference

Per-data-block metadata within a stripe descriptor. More...

#include <aaruformat/structs/erasure.h>

Data Fields

uint64_t offset
 Absolute file offset of the block.
uint32_t onDiskSize
 Actual on-disk bytes (sizeof(header) + cmpLength).
uint64_t shardCrc64
 CRC64-ECMA of on-disk bytes zero-padded to shardSize.

Detailed Description

Per-data-block metadata within a stripe descriptor.

Stores the file offset, actual on-disk size, and an independent CRC64 covering the on-disk bytes (header + compressed payload) zero-padded to shardSize. This CRC64 is independent of BlockHeader.cmpCrc64 — it can detect corruption even when the BlockHeader itself is garbled.

Definition at line 87 of file erasure.h.

Field Documentation

◆ offset

uint64_t StripeDataBlockEntry::offset

Absolute file offset of the block.

Definition at line 89 of file erasure.h.

Referenced by ec_flush_data_stripe(), ec_load_ecmb(), ec_recover_data_block(), and ec_write_batch_parity().

◆ onDiskSize

uint32_t StripeDataBlockEntry::onDiskSize

Actual on-disk bytes (sizeof(header) + cmpLength).

Definition at line 90 of file erasure.h.

Referenced by ec_flush_data_stripe(), ec_recover_data_block(), and ec_write_batch_parity().

◆ shardCrc64

uint64_t StripeDataBlockEntry::shardCrc64

CRC64-ECMA of on-disk bytes zero-padded to shardSize.

Definition at line 91 of file erasure.h.

Referenced by ec_flush_data_stripe(), ec_recover_data_block(), and ec_write_batch_parity().


The documentation for this struct was generated from the following file: