-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
/storage_service/keyspace_upgrade_sstables/{keyspace} crashes the server if keyspace uses tablets #17452
Labels
area/compaction
area/storage
Storage space reduction and other storage enhancements
area/upgrade
Backport candidate
Milestone
Comments
lkshminarayanan
added
area/storage
Storage space reduction and other storage enhancements
area/compaction
area/upgrade
area/tablets
labels
Feb 21, 2024
lkshminarayanan
added a commit
to lkshminarayanan/scylladb
that referenced
this issue
Feb 22, 2024
Commit 7a98877 sets owned_ranges_ptr to null when initiating an upgrade on keyspaces with tablets. owned_ranges_ptr is set to null because cleanup is not required for tables using tablets. As a result, cache invalidation is also not required for any ranges. Update get_ranges_for_invalidation to handle null values of owned_ranges_ptr by returning empty ranges for cache invalidation. Fixes scylladb#17452 Signed-off-by: Lakshmi Narayanan Sreethar <lakshmi.sreethar@scylladb.com>
This will be fixed by #17502 |
xtrey
pushed a commit
to xtrey/scylladb
that referenced
this issue
Mar 1, 2024
…anup work Since commit f1bbf70, many compaction types can do cleanup work, but turns out we forgot to invalidate cache on their completion. So if a node regains ownership of token that had partition deleted in its previous owner (and tombstone is already gone), data can be resurrected. Tablet is not affected, as it explicitly invalidates cache during migration cleanup stage. Scylla 5.4 is affected. Fixes scylladb#17501. Fixes scylladb#17452. Signed-off-by: Raphael S. Carvalho <raphaelsc@scylladb.com> Closes scylladb#17502
denesb
pushed a commit
that referenced
this issue
Mar 13, 2024
…anup work Since commit f1bbf70, many compaction types can do cleanup work, but turns out we forgot to invalidate cache on their completion. So if a node regains ownership of token that had partition deleted in its previous owner (and tombstone is already gone), data can be resurrected. Tablet is not affected, as it explicitly invalidates cache during migration cleanup stage. Scylla 5.4 is affected. Fixes #17501. Fixes #17452. Signed-off-by: Raphael S. Carvalho <raphaelsc@scylladb.com> Closes #17502 (cherry picked from commit f07c233)
dgarcia360
pushed a commit
to dgarcia360/scylla
that referenced
this issue
Apr 30, 2024
…anup work Since commit f1bbf70, many compaction types can do cleanup work, but turns out we forgot to invalidate cache on their completion. So if a node regains ownership of token that had partition deleted in its previous owner (and tombstone is already gone), data can be resurrected. Tablet is not affected, as it explicitly invalidates cache during migration cleanup stage. Scylla 5.4 is affected. Fixes scylladb#17501. Fixes scylladb#17452. Signed-off-by: Raphael S. Carvalho <raphaelsc@scylladb.com> Closes scylladb#17502
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area/compaction
area/storage
Storage space reduction and other storage enhancements
area/upgrade
Backport candidate
The PR #17335 fixes an issue in the sstables upgrade flow : it sends nullptr for owned_ranges to cleanup compaction when the keyspace uses tablets. But this has introduced another bug in
get_ranges_for_invalidation
, where the function crashes as it tries to de-reference owned_ranges, which in this case is a nullptr.Resulting crash on upgrade of a keyspace with tablets :
The text was updated successfully, but these errors were encountered: