mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-21 09:00:35 +00:00
TemporaryHashes.db is a temporary sstable component used during ms sstable writes. It's different from other sstable components in that it's not included in the TOC. Because of this, it has a special case in the logic that deletes unfinished sstables on boot. (After Scylla dies in the middle of a sstable write). But there's a bug in that special case, which causes Scylla to forget to delete other components from the same unfinished sstable. The code intends only to delete the TemporaryHashes.db file from the `_state->generations_found` multimap, but it accidentally also deletes the file's sibling components from the multimap. Fix that. Also, extend a related test so that it would catch the problem before the fix. Fixes scylladb/scylladb#26393 Bugfix, needs backport to 2025.4. - (cherry picked from commit16cb223d7f) - (cherry picked from commit6efb807c1a) Parent PR: #26394 Closes scylladb/scylladb#26409 * github.com:scylladb/scylladb: sstables/sstable_directory: don't forget to delete other components when deleting TemporaryHashes.db test/boost/database_test: fix two no-op distributed loader tests