mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-31 03:56:42 +00:00
This series mainly fixes issues with the serialization of promoted index entries for non-compound schemas and with the serialization of range tombstones, also for non-compound schemas. We lift the correct cell name writing code into its own function, and direct all users to it. We also ensure backward compatibility with incorrectly generated promoted indexes and range tombstones. Fixes #2995 Fixes #2986 Fixes #2979 Fixes #2992 Fixes #2993 * git@github.com:duarten/scylla.git promoted-index-serialization/v3: sstables/sstables: Unify column name writers sstables/sstables: Don't write index entry for a missing row maker sstables/sstables: Reuse write_range_tombstone() for row tombstones sstables/sstables: Lift index writing for row tombstones sstables/sstables: Leverage index code upon range tombstone consume sstables/sstables: Move out tombstone check in write_range_tombstone() sstables/sstables: A schema with static columns is always compound sstables/sstables: Lift column name writing logic sstables/sstables: Use schema-aware write_column_name() for collections sstables/sstables: Use schema-aware write_column_name() for row marker sstables/sstables: Use schema-aware write_column_name() for static row sstables/sstables: Writing promoted index entry leverages column_name_writer sstables/sstables: Add supported feature list to sstables sstables/sstables: Don't use incorrectly serialized promoted index cql3/single_column_primary_key_restrictions: Implement is_inclusive() cql3/delete_statement: Constrain range deletions for non-compound schemas tests/cql_query_test: Verify range deletion constraints sstables/sstables: Correctly deserialize range tombstones service/storage_service: Add feature for correct non-compound RTs tests/sstable_*: Start the storage service for some cases sstables/sstable_writer: Prepare to control range tombstone serialization sstables/sstables: Correctly serialize range tombstones tests/sstable_assertions: Fix monotonicity check for promoted indexes tests/sstable_assertions: Assert a promoted index is empty tests/sstable_mutation_test: Verify promoted index serializes correctly tests/sstable_mutation_test: Verify promoted index repeats tombstones tests/sstable_mutation_test: Ensure range tombstone serializes correctly tests/sstable_datafile_test: Add test for incorrect promoted index tests/sstable_datafile_test: Verify reading of incorrect range tombstones sstables/sstable: Rename schema-oblivious write_column_name() function sstables/sstables: No promoted index without clustering keys tests/sstable_mutation_test: Verify promoted index is not generated sstables/sstables: Optimize column name writing and indexing compound_compat: Don't assume compoundness