mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-21 00:50:35 +00:00
This pull request adds support for calculation and storing CRC32 digests for all SSTable components. This change replaces plain file_writer with crc32_digest_file_writer for all SSTable components that should be checksummed. The resulting component digests are stored in the sstable structure and later persisted to disk as part of the Scylla metadata component during writer::consume_end_of_stream. All important SSTable components (Index, Partitions, Rows, Summary, Filter, CompressionInfo, and TOC) are covered. Several test cases where introduced to verify expected behaviour. Backport is not required, it is a new feature Fixes #20100 Closes scylladb/scylladb#27287 * github.com:scylladb/scylladb: sstable_test: add verification testcases of SSTable components digests persistance sstables: store digest of all sstable components in scylla metadata sstables: Add TemporaryScylla metadata component type sstables: Extract file writer closing logic into separate methods sstables: Add components_digests to scylla metadata components sstables: Implement CRC32 digest-only writer