mongo/jstests/replsets/initial_sync_clone_multikey.js

36 lines
952 B
JavaScript

/**
* Test initial sync cloning of a collection that contains a multikey index.
*/
(function() {
"use strict";
const replTest = new ReplSetTest({nodes: 1});
replTest.startSet();
replTest.initiate();
const dbName = jsTest.name();
const collName = "test";
const primary = replTest.getPrimary();
const primaryDB = primary.getDB(dbName);
jsTestLog("Creating the collection and an index.");
assert.commandWorked(primaryDB.createCollection(collName));
assert.commandWorked(primaryDB[collName].createIndex({"x": 1}, {background: true}));
// Make the index multikey.
primaryDB[collName].insert({x: [1, 2]});
jsTestLog("Adding a secondary node to do the initial sync.");
replTest.add();
jsTestLog("Re-initiating replica set with the new secondary.");
replTest.reInitiate();
// Wait until initial sync completes.
jsTestLog("Waiting until initial sync completes.");
replTest.awaitSecondaryNodes();
replTest.awaitReplication();
replTest.stopSet();
})();