mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-29 04:37:00 +00:00
S3 wasn't providing filter size and accurate size for all SSTable components on disk. First, filter size is provided by taking advantage that its in-memory representation is roughly the same as on-disk one. Second, size for all components is provided by piggybacking on sstable parser and writer, so no longer a need to do a separate additional step after Scylla have either parsed or written all components. Finally, sstable::storage::get_stats() is killed, so the burden is no longer pushed on the storage type implementation. Refs #13649. Closes #13682 * github.com:scylladb/scylladb: test: Verify correctness of sstable::bytes_on_disk() sstable: Piggyback on sstable parser and writer to provide bytes_on_disk sstable: restore indentation in read_digest() and read_checksum() sstable: make all parsing of simple components go through do_read_simple() sstable: Add missing pragma once to random_access_reader.hh sstable: make all writing of simple components go through do_write_simple() test: sstable_utils: reuse set_values() sstable: Restore indentation in read_simple() sstable: Coroutinize read_simple() sstable: Use filter memory footprint in filter_size()