Files
mongo/jstests/replsets/dbcheck/dbcheck_old_format_keys_basic.js
Brad Cater 24544088c7 SERVER-103992 Put dbcheck in its own subdir. (#35229)
GitOrigin-RevId: 145fc4403e4871e38e2c7377a507a182adf3e51c
2025-04-25 13:39:05 +00:00

65 lines
1.9 KiB
JavaScript

/**
* Tests dbCheck with old format index keys and verifies that no inconsistency is found.
*
* @tags: [
* requires_fcv_80
* ]
*/
import {
DbCheckOldFormatKeysTest,
defaultNumDocs
} from "jstests/replsets/libs/dbcheck_old_format_keys_test.js";
import {
assertCompleteCoverage,
checkHealthLog,
clearHealthLog,
forEachNonArbiterNode,
logQueries,
runDbCheck
} from "jstests/replsets/libs/dbcheck_utils.js";
const dbName = "testDB";
const collName = "oldFormatIndexKeyTestColl";
const dbCheckTest = new DbCheckOldFormatKeysTest({});
dbCheckTest.insertOldFormatKeyStrings(dbName, collName);
const rst = dbCheckTest.getRst();
const primary = dbCheckTest.getPrimary();
clearHealthLog(rst);
jsTestLog("Running dbCheck dataConsistencyAndMissingIndexKeysCheck");
runDbCheck(rst,
primary.getDB(dbName),
collName,
{validateMode: "dataConsistencyAndMissingIndexKeysCheck"},
true /*awaitCompletion*/);
// Verify that no error or warning health log entries were logged.
forEachNonArbiterNode(rst, function(node) {
checkHealthLog(node.getDB("local").system.healthlog, logQueries.allErrorsOrWarningsQuery, 0);
});
clearHealthLog(rst);
jsTestLog("Running dbCheck extraIndexKeysCheck");
runDbCheck(rst,
primary.getDB(dbName),
collName,
{validateMode: "extraIndexKeysCheck", secondaryIndex: "a_1"},
true /*awaitCompletion*/);
// Verify that no error or warning health log entries were logged.
forEachNonArbiterNode(rst, function(node) {
checkHealthLog(node.getDB("local").system.healthlog, logQueries.allErrorsOrWarningsQuery, 0);
assertCompleteCoverage(node.getDB("local").system.healthlog,
defaultNumDocs,
"a" /*indexName*/,
null /* docSuffix */,
null /* start */,
null /* end */);
});
dbCheckTest.stop();