2019-05-31 03:43:48 -04:00
|
|
|
// Basic test that the two-phase commit coordinator metrics fields appear in serverStatus output.
|
2024-08-20 17:54:15 -04:00
|
|
|
import {ShardingTest} from "jstests/libs/shardingtest.js";
|
|
|
|
|
|
2021-05-10 14:43:44 +00:00
|
|
|
const st = new ShardingTest({shards: 1});
|
2019-05-31 03:43:48 -04:00
|
|
|
|
|
|
|
|
const res = assert.commandWorked(st.shard0.adminCommand({serverStatus: 1}));
|
|
|
|
|
assert.neq(null, res.twoPhaseCommitCoordinator);
|
2023-04-11 15:24:43 +00:00
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator, ["totalCreated"]);
|
|
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator, ["totalStartedTwoPhaseCommit"]);
|
|
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator, ["totalCommittedTwoPhaseCommit"]);
|
|
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator, ["totalAbortedTwoPhaseCommit"]);
|
2019-05-31 03:43:48 -04:00
|
|
|
assert.neq(null, res.twoPhaseCommitCoordinator.currentInSteps);
|
2023-04-11 15:24:43 +00:00
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator.currentInSteps, ["writingParticipantList"]);
|
|
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator.currentInSteps, ["waitingForVotes"]);
|
|
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator.currentInSteps, ["writingDecision"]);
|
|
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator.currentInSteps, ["waitingForDecisionAcks"]);
|
|
|
|
|
assert.hasFields(res.twoPhaseCommitCoordinator.currentInSteps, ["deletingCoordinatorDoc"]);
|
2019-05-31 03:43:48 -04:00
|
|
|
|
2025-08-21 10:17:44 -07:00
|
|
|
st.stop();
|