Enum ChecksumType
- Namespace
- RocksDbNet
- Assembly
- RocksDb.Net.dll
Checksum algorithm used to protect each block.
public enum ChecksumType
Fields
Crc32c = 1CRC32C, hardware-accelerated on most processors.
None = 0No checksum. Corruption in a block is not detected, so this trades the only mechanism that notices a damaged file for a little write time.
XxHash = 2xxHash, 32-bit output.
XxHash64 = 3xxHash64, truncated to 32 bits in the block trailer.
Xxh3 = 4XXH3, the default. Faster than the rest on current processors.
Remarks
Mirrors ChecksumType in include/rocksdb/table.h at the pinned
version. The numbering is doubly safe to rely on: the value is written into
every SST file and read back by whichever version opens it later, so it
cannot be renumbered without breaking every file already on disk.
Checked against the running library as well as the header. The C API
accepts exactly 0 to 4 and rejects anything outside, naming
ChecksumType when it does; a fresh
BlockBasedTableOptions reports 4; and RocksDb's own option
parser accepts exactly the five names these members are called after.
Selecting one by name also works without this enum, through
DbOptions.WithOptionsFromString("block_based_table_factory={checksum=kXXH3;}").