db, sstable: bump up default sstable format to "md"
before this change, we defaults to use "mc" sstable format, and
switch to "md" if the cluster agrees on using it, and to
"me" if the cluster agrees on using this. the cluster feature
is used to get the consensus across the members in the cluster,
if any of the existing nodes in the cluster has its `sstable_format`
configured to, for instance, "mc", then the cluster is stuck with
"mc".
but we disabled "mc" sstable format back in 3d345609, the first LTS
release including that change was scylla v5.2.0. which means, the
cluster of the last major version Scylla should be using "md" or
"me". per our document on upgrade, see docs/upgrade/index.rst,
> You should perform the upgrades consecutively - to each
> successive X.Y version, without skipping any major or minor version.
>
> Before you upgrade to the next version, the whole cluster (each
> node) must be upgraded to the previous version.
we can assume that, a 6.x node will only join a cluster
with 5.x or 6.x nodes. (joining a 7.x cluster should work, but
this is not relevant to this change). in both cases, since
5.x and up scylla can only configured with "md" `sstable_format`,
there is no need to switch from "mc" to "md" anymore. so we can
ditch the code supporting it.
Refs #16551
Signed-off-by: Kefu Chai <kefu.chai@scylladb.com>
This commit is contained in:
@@ -66,7 +66,6 @@ sstables_format_listener::sstables_format_listener(gms::gossiper& g, sharded<gms
|
||||
: _gossiper(g)
|
||||
, _features(f)
|
||||
, _selector(selector)
|
||||
, _md_feature_listener(*this, sstables::sstable_version_types::md)
|
||||
, _me_feature_listener(*this, sstables::sstable_version_types::me)
|
||||
{ }
|
||||
|
||||
@@ -87,7 +86,6 @@ future<> sstables_format_listener::start() {
|
||||
// The listener may fire immediately, create a thread for that case.
|
||||
co_await seastar::async([this] {
|
||||
_features.local().me_sstable.when_enabled(_me_feature_listener);
|
||||
_features.local().md_sstable.when_enabled(_md_feature_listener);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -68,7 +68,6 @@ class sstables_format_listener {
|
||||
seastar::named_semaphore _sem = {1, named_semaphore_exception_factory{"feature listeners"}};
|
||||
seastar::gate _sel;
|
||||
|
||||
feature_enabled_listener _md_feature_listener;
|
||||
feature_enabled_listener _me_feature_listener;
|
||||
public:
|
||||
sstables_format_listener(gms::gossiper& g, sharded<gms::feature_service>& f, sstables_format_selector& selector);
|
||||
|
||||
@@ -89,7 +89,7 @@ private:
|
||||
// that format. read_sstables_format() also overwrites _sstables_format
|
||||
// if an sstable format was chosen earlier (and this choice was persisted
|
||||
// in the system table).
|
||||
sstable_version_types _format = sstable_version_types::mc;
|
||||
sstable_version_types _format = sstable_version_types::md;
|
||||
|
||||
// _active and _undergoing_close are used in scylla-gdb.py to fetch all sstables
|
||||
// on current shard using "scylla sstables" command. If those fields are renamed,
|
||||
|
||||
Reference in New Issue
Block a user