mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-29 19:21:01 +00:00
Storage service API set/unset has two flaws. First, unset doesn't happen, so after storage service is stopped its handlers become "local is not initialized"-assertion and use-after-free landmines. Second, setting of storage service API carry gossiper and system keyspace references, thus duplicating the knowledge about storage service dependencies. This PR fixes both by adding the storage service API unsetting and by making the handlers use _only_ storage service instance, not any externally provided references. Closes scylladb/scylladb#15547 * github.com:scylladb/scylladb: main, api: Set/Unset storage_service API in proper place api/storage_service: Remove gossiper arg from API api/storage_service: Remove system keyspace arg from API api/storage_service: Get gossiper from storage service api/storage_service: Get token_metadata from storage service