mongo/jstests/sharding/live_shard_logical_initial_sync.js
Zac 591928c619 SERVER-108478 JS formatted by prettier and remove clang-format (#39656)
GitOrigin-RevId: 6c8f6aded47f260aa4f7c231b17dae3302cb1e04
2025-08-21 17:27:09 +00:00

34 lines
1.1 KiB
JavaScript

/**
* Tests that sharding state is properly initialized on new shard members that were added into live
* shards using logical initial sync.
*
* We control our own failovers, and we also need the RSM to react reasonably quickly to those.
* @tags: [does_not_support_stepdowns, requires_streamable_rsm]
*/
import {ShardingTest} from "jstests/libs/shardingtest.js";
import {ShardingStateTest} from "jstests/sharding/libs/sharding_state_test.js";
const st = new ShardingTest({config: 1, shards: {rs0: {nodes: 1}}});
const rs = st.rs0;
let newNode;
if (TestData.configShard) {
newNode = ShardingStateTest.addReplSetNode({
replSet: rs,
serverTypeFlag: "configsvr",
newNodeParams: "featureFlagTransitionToCatalogShard=true",
});
} else {
newNode = ShardingStateTest.addReplSetNode({replSet: rs, serverTypeFlag: "shardsvr"});
}
jsTestLog("Checking sharding state before failover.");
ShardingStateTest.checkShardingState(st);
jsTestLog("Checking sharding state after failover.");
ShardingStateTest.failoverToMember(rs, newNode);
ShardingStateTest.checkShardingState(st);
st.stop();