mirror of
https://github.com/scylladb/scylladb.git
synced 2026-06-04 14:03:06 +00:00
Currently, the moved-object's manager pointer is moved into the constructed object, but without fixing the registration to point to the moved-to object, causing #15248. Although we could properly move the registration from the moved-from object to the moved-to one, it is simpler to just disallow moving a registered tracker, since it's not needed anywhere. This way we just don't need to mess with the trackers' registration. The move-assignment operator has a similar problem, therefore it is deleted in this series, and the function is renamed to `transfer_backlog` that just doesn't deal with the moved-from registration. This is safe since it's only used internally by the compaction manager. Fixes #15248 Closes scylladb/scylladb#15445 * github.com:scylladb/scylladb: compaction_state: store backlog_track in std::optional compaction_backlog_tracker: do not allow moving registered trackers