summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCheahuychou Mao <cheahuychou.mao@mongodb.com>2019-10-10 15:42:06 +0000
committerevergreen <evergreen@mongodb.com>2019-10-10 15:42:06 +0000
commit67302fce7cf582fac5cb4b301d90e6358b3719b8 (patch)
tree10d19c4f05c6f400480c197266981360017e7ce5
parentfaa0ec0def1317f9005d3b0935aff83666f47404 (diff)
downloadmongo-67302fce7cf582fac5cb4b301d90e6358b3719b8.tar.gz
SERVER-38875 Make tests start shards as replica sets instead of standalones after auth cluster time gossiping fix
-rw-r--r--buildscripts/resmokeconfig/suites/audit.yml3
-rw-r--r--jstests/auth/access_control_with_unreachable_configs.js3
-rw-r--r--jstests/auth/auth_mechanism_discovery.js9
-rw-r--r--jstests/auth/authentication_restrictions.js4
-rw-r--r--jstests/auth/authentication_restrictions_role.js4
-rw-r--r--jstests/auth/authz_modifications_access_control.js4
-rw-r--r--jstests/auth/basic_role_auth.js4
-rw-r--r--jstests/auth/clac_system_colls.js4
-rw-r--r--jstests/auth/commands_builtin_roles.js3
-rw-r--r--jstests/auth/commands_user_defined_roles.js3
-rw-r--r--jstests/auth/currentop_cursors_auth.js3
-rw-r--r--jstests/auth/deleted_recreated_user_base.js (renamed from jstests/auth/deleted_recreated_user.js)25
-rw-r--r--jstests/auth/deleted_recreated_user_mongod.js12
-rw-r--r--jstests/auth/deleted_recreated_user_sharded_cluster.js23
-rw-r--r--jstests/auth/getMore.js9
-rw-r--r--jstests/auth/kill_cursors.js9
-rw-r--r--jstests/auth/killop_own_ops.js4
-rw-r--r--jstests/auth/list_all_local_sessions.js9
-rw-r--r--jstests/auth/list_databases_base.js (renamed from jstests/auth/list_databases.js)21
-rw-r--r--jstests/auth/list_databases_mongod.js12
-rw-r--r--jstests/auth/list_databases_sharded_cluster.js14
-rw-r--r--jstests/auth/list_local_sessions_base.js (renamed from jstests/auth/list_local_sessions.js)19
-rw-r--r--jstests/auth/list_local_sessions_mongod.js12
-rw-r--r--jstests/auth/list_local_sessions_sharded_cluster.js14
-rw-r--r--jstests/auth/list_sessions.js9
-rw-r--r--jstests/auth/listcommands_preauth_base.js (renamed from jstests/auth/listcommands_preauth.js)19
-rw-r--r--jstests/auth/listcommands_preauth_mongod.js12
-rw-r--r--jstests/auth/listcommands_preauth_sharded_cluster.js14
-rw-r--r--jstests/auth/mongos_cache_invalidation.js4
-rw-r--r--jstests/auth/pseudo_commands.js8
-rw-r--r--jstests/auth/resource_pattern_matching.js9
-rw-r--r--jstests/auth/role_management_commands_edge_cases.js4
-rw-r--r--jstests/auth/role_management_commands_sharded_wc_1.js9
-rw-r--r--jstests/auth/role_management_commands_sharded_wc_majority.js9
-rw-r--r--jstests/auth/user_defined_roles.js4
-rw-r--r--jstests/auth/user_management_commands_edge_cases.js4
-rw-r--r--jstests/auth/user_management_commands_sharded_wc_1.js4
-rw-r--r--jstests/auth/user_management_commands_sharded_wc_majority.js4
-rw-r--r--jstests/auth/usersInfo_base.js (renamed from jstests/auth/usersInfo.js)13
-rw-r--r--jstests/auth/usersInfo_mongod.js13
-rw-r--r--jstests/auth/usersInfo_sharded_cluster.js13
-rw-r--r--jstests/auth/views_authz.js9
-rw-r--r--jstests/noPassthrough/auth_reject_mismatching_logical_times.js9
-rw-r--r--jstests/noPassthrough/cross_user_getmore_has_no_side_effects.js4
-rw-r--r--jstests/noPassthrough/logical_session_cursor_checks.js9
-rw-r--r--jstests/noPassthrough/unsupported_change_stream_deployments.js1
-rw-r--r--jstests/sharding/advance_cluster_time_action_type.js9
-rw-r--r--jstests/sharding/aggregation_currentop.js2
-rw-r--r--jstests/sharding/auth.js2
-rw-r--r--jstests/sharding/auth2.js4
-rw-r--r--jstests/sharding/authCommands.js2
-rw-r--r--jstests/sharding/authConnectionHook.js13
-rw-r--r--jstests/sharding/auth_add_shard.js14
-rw-r--r--jstests/sharding/auth_no_config_primary.js4
-rw-r--r--jstests/sharding/auth_sharding_cmd_metadata.js2
-rw-r--r--jstests/sharding/auth_slaveok_routing.js6
-rw-r--r--jstests/sharding/authmr.js9
-rw-r--r--jstests/sharding/authwhere.js9
-rw-r--r--jstests/sharding/cleanup_orphaned_auth.js6
-rw-r--r--jstests/sharding/localhostAuthBypass.js7
-rw-r--r--jstests/sharding/mongod_returns_no_cluster_time_without_keys.js2
-rw-r--r--jstests/sharding/mongos_rs_auth_shard_failure_tolerance.js2
-rw-r--r--jstests/ssl/libs/ssl_helpers.js3
-rw-r--r--jstests/ssl/sharding_with_x509.js3
-rw-r--r--jstests/ssl/ssl_fragment.js8
-rw-r--r--jstests/ssl/ssl_without_ca.js8
-rw-r--r--jstests/ssl/ssl_x509_roles.js8
-rw-r--r--jstests/ssl/x509_client.js4
68 files changed, 219 insertions, 319 deletions
diff --git a/buildscripts/resmokeconfig/suites/audit.yml b/buildscripts/resmokeconfig/suites/audit.yml
index 18c0d6cf98b..eb2f7d00330 100644
--- a/buildscripts/resmokeconfig/suites/audit.yml
+++ b/buildscripts/resmokeconfig/suites/audit.yml
@@ -3,9 +3,6 @@ test_kind: js_test
selector:
roots:
- src/mongo/db/modules/*/jstests/audit/*.js
- exclude_files:
- # TODO SERVER-32672: ShardingTest with keyfile and replica set shards fails.
- - src/mongo/db/modules/*/jstests/audit/audit_read_from_sharded_secondaries.js
# audit tests start their own mongod's.
executor:
diff --git a/jstests/auth/access_control_with_unreachable_configs.js b/jstests/auth/access_control_with_unreachable_configs.js
index a75d583e6f0..69cb9140720 100644
--- a/jstests/auth/access_control_with_unreachable_configs.js
+++ b/jstests/auth/access_control_with_unreachable_configs.js
@@ -4,14 +4,13 @@
// there are.
// @tags: [requires_sharding]
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
var st = new ShardingTest({
shards: 1,
mongos: 1,
config: 1,
keyFile: 'jstests/libs/key1',
useHostname: false, // Needed when relying on the localhost exception
- other: {mongosOptions: {verbose: 1}, shardAsReplicaSet: false}
+ other: {mongosOptions: {verbose: 1}}
});
var mongos = st.s;
var config = st.config0;
diff --git a/jstests/auth/auth_mechanism_discovery.js b/jstests/auth/auth_mechanism_discovery.js
index 78b150ec1aa..d17d1ddb03b 100644
--- a/jstests/auth/auth_mechanism_discovery.js
+++ b/jstests/auth/auth_mechanism_discovery.js
@@ -43,13 +43,8 @@ runTest(m);
MongoRunner.stopMongod(m);
// Test sharded.
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- shards: 1,
- mongos: 1,
- config: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
-});
+const st =
+ new ShardingTest({shards: 1, mongos: 1, config: 1, other: {keyFile: 'jstests/libs/key1'}});
runTest(st.s0);
st.stop();
})();
diff --git a/jstests/auth/authentication_restrictions.js b/jstests/auth/authentication_restrictions.js
index 172db043770..456fe1465e1 100644
--- a/jstests/auth/authentication_restrictions.js
+++ b/jstests/auth/authentication_restrictions.js
@@ -194,7 +194,6 @@ testConnection(rst.getPrimary(), rst.getSecondary(), awaitReplication, awaitRepl
rst.stopSet();
print("Testing sharded cluster");
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
var st = new ShardingTest({
mongos: 2,
config: 3,
@@ -203,8 +202,7 @@ var st = new ShardingTest({
other: {
mongosOptions: {bind_ip_all: "", auth: null},
configOptions: {auth: null},
- shardOptions: {auth: null},
- shardAsReplicaSet: false
+ shardOptions: {auth: null}
}
});
testConnection(st.s0,
diff --git a/jstests/auth/authentication_restrictions_role.js b/jstests/auth/authentication_restrictions_role.js
index 70256fba7f5..d71c788ac2f 100644
--- a/jstests/auth/authentication_restrictions_role.js
+++ b/jstests/auth/authentication_restrictions_role.js
@@ -380,7 +380,6 @@ testRolesInfoCommand(rst.getPrimary());
rst.stopSet();
print("Testing sharded cluster");
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
var st = new ShardingTest({
mongos: 2,
config: 3,
@@ -389,8 +388,7 @@ var st = new ShardingTest({
other: {
mongosOptions: {bind_ip_all: "", auth: null},
configOptions: {auth: null},
- shardOptions: {auth: null},
- shardAsReplicaSet: false
+ shardOptions: {auth: null}
}
});
testRestrictionCreationAndEnforcement(
diff --git a/jstests/auth/authz_modifications_access_control.js b/jstests/auth/authz_modifications_access_control.js
index f660e861908..a8592e2cd1b 100644
--- a/jstests/auth/authz_modifications_access_control.js
+++ b/jstests/auth/authz_modifications_access_control.js
@@ -299,8 +299,6 @@ runTest(conn);
MongoRunner.stopMongod(conn);
jsTest.log('Test sharding');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runTest(st.s);
st.stop();
diff --git a/jstests/auth/basic_role_auth.js b/jstests/auth/basic_role_auth.js
index 6f481afc2e6..ff487bebbd9 100644
--- a/jstests/auth/basic_role_auth.js
+++ b/jstests/auth/basic_role_auth.js
@@ -518,9 +518,7 @@ runTests(conn);
MongoRunner.stopMongod(conn);
jsTest.log('Test sharding');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st =
- new ShardingTest({shards: 1, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 1, keyFile: 'jstests/libs/key1'});
runTests(st.s);
st.stop();
diff --git a/jstests/auth/clac_system_colls.js b/jstests/auth/clac_system_colls.js
index d9a6912e0ea..066b6e6c727 100644
--- a/jstests/auth/clac_system_colls.js
+++ b/jstests/auth/clac_system_colls.js
@@ -54,8 +54,6 @@ runTest(conn.getDB("admin"));
MongoRunner.stopMongod(conn);
jsTest.log('Test sharding');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runTest(st.s.getDB("admin"));
st.stop();
diff --git a/jstests/auth/commands_builtin_roles.js b/jstests/auth/commands_builtin_roles.js
index 4b0c803a771..637634df83b 100644
--- a/jstests/auth/commands_builtin_roles.js
+++ b/jstests/auth/commands_builtin_roles.js
@@ -162,7 +162,8 @@ authCommandsLib.runTests(conn, impls);
MongoRunner.stopMongod(conn);
// run all tests sharded
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
+// TODO: SERVER-43897 Make commands_user_defined_roles.js and commands_builtin_roles.js start shards
+// as replica sets.
conn = new ShardingTest({
shards: 2,
mongos: 1,
diff --git a/jstests/auth/commands_user_defined_roles.js b/jstests/auth/commands_user_defined_roles.js
index f1b5730eb94..4cc910f35ed 100644
--- a/jstests/auth/commands_user_defined_roles.js
+++ b/jstests/auth/commands_user_defined_roles.js
@@ -211,7 +211,8 @@ authCommandsLib.runTests(conn, impls);
MongoRunner.stopMongod(conn);
// run all tests sharded
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
+// TODO: SERVER-43897 Make commands_user_defined_roles.js and commands_builtin_roles.js start shards
+// as replica sets.
conn = new ShardingTest({
shards: 2,
mongos: 1,
diff --git a/jstests/auth/currentop_cursors_auth.js b/jstests/auth/currentop_cursors_auth.js
index 70ee354273a..5b1cf3255c2 100644
--- a/jstests/auth/currentop_cursors_auth.js
+++ b/jstests/auth/currentop_cursors_auth.js
@@ -8,9 +8,6 @@
load("jstests/libs/fixture_helpers.js"); // For isMongos.
-// TODO SERVER-32672: remove the 'skipGossipingClusterTime' flag.
-TestData.skipGossipingClusterTime = true;
-
// Create a new sharded cluster for testing and enable auth.
const key = "jstests/libs/key1";
const st = new ShardingTest({name: jsTestName(), keyFile: key, shards: 1});
diff --git a/jstests/auth/deleted_recreated_user.js b/jstests/auth/deleted_recreated_user_base.js
index d668b47fced..c64b2e4126f 100644
--- a/jstests/auth/deleted_recreated_user.js
+++ b/jstests/auth/deleted_recreated_user_base.js
@@ -1,10 +1,8 @@
-// Test that sessions can not be resumed by deleted and recreated user.
-
-(function() {
'use strict';
const kInvalidationIntervalSecs = 5;
+// Test that sessions cannot be resumed by deleted and recreated user.
function runTest(s0, s1) {
assert(s0);
assert(s1);
@@ -51,24 +49,3 @@ function runTest(s0, s1) {
assert.throws(() => admin.mycoll.find({}).toArray(), [], "Able to find after recreate");
assert.eq(thrown.code, ErrorCodes.Unauthorized, "Threw something other than unauthorized");
}
-
-const mongod = MongoRunner.runMongod({auth: ''});
-runTest(mongod, mongod);
-MongoRunner.stopMongod(mongod);
-
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- shards: 1,
- mongos: 2,
- config: 1,
- other: {
- keyFile: 'jstests/libs/key1',
- shardAsReplicaSet: false,
- mongosOptions: {
- setParameter: 'userCacheInvalidationIntervalSecs=' + kInvalidationIntervalSecs,
- },
- },
-});
-runTest(st.s0, st.s1);
-st.stop();
-})();
diff --git a/jstests/auth/deleted_recreated_user_mongod.js b/jstests/auth/deleted_recreated_user_mongod.js
new file mode 100644
index 00000000000..c033a916263
--- /dev/null
+++ b/jstests/auth/deleted_recreated_user_mongod.js
@@ -0,0 +1,12 @@
+/*
+ * Test that sessions on mongods cannot be resumed by deleted and recreated user.
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/deleted_recreated_user_base.js");
+
+const mongod = MongoRunner.runMongod({auth: ''});
+runTest(mongod, mongod);
+MongoRunner.stopMongod(mongod);
+})();
diff --git a/jstests/auth/deleted_recreated_user_sharded_cluster.js b/jstests/auth/deleted_recreated_user_sharded_cluster.js
new file mode 100644
index 00000000000..58976b3f8c6
--- /dev/null
+++ b/jstests/auth/deleted_recreated_user_sharded_cluster.js
@@ -0,0 +1,23 @@
+/*
+ * Test that sessions on sharded clusters cannot be resumed by deleted and recreated user.
+ * @tags: [requires_sharding]
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/deleted_recreated_user_base.js");
+
+const st = new ShardingTest({
+ shards: 1,
+ mongos: 2,
+ config: 1,
+ other: {
+ keyFile: 'jstests/libs/key1',
+ mongosOptions: {
+ setParameter: 'userCacheInvalidationIntervalSecs=' + kInvalidationIntervalSecs,
+ },
+ },
+});
+runTest(st.s0, st.s1);
+st.stop();
+})();
diff --git a/jstests/auth/getMore.js b/jstests/auth/getMore.js
index c593a35957d..26ec6a2783a 100644
--- a/jstests/auth/getMore.js
+++ b/jstests/auth/getMore.js
@@ -329,13 +329,8 @@ runTest(conn);
MongoRunner.stopMongod(conn);
// Run the test on a sharded cluster.
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-let cluster = new ShardingTest({
- shards: 1,
- mongos: 1,
- keyFile: "jstests/libs/key1",
- other: {shardOptions: {auth: ""}, shardAsReplicaSet: false}
-});
+let cluster = new ShardingTest(
+ {shards: 1, mongos: 1, keyFile: "jstests/libs/key1", other: {shardOptions: {auth: ""}}});
runTest(cluster);
cluster.stop();
}());
diff --git a/jstests/auth/kill_cursors.js b/jstests/auth/kill_cursors.js
index 893c7139c79..bb31721e860 100644
--- a/jstests/auth/kill_cursors.js
+++ b/jstests/auth/kill_cursors.js
@@ -162,13 +162,8 @@ const mongod = MongoRunner.runMongod({auth: ""});
runTest(mongod);
MongoRunner.stopMongod(mongod);
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- shards: 1,
- mongos: 1,
- config: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
-});
+const st =
+ new ShardingTest({shards: 1, mongos: 1, config: 1, other: {keyFile: 'jstests/libs/key1'}});
runTest(st.s0);
st.stop();
})();
diff --git a/jstests/auth/killop_own_ops.js b/jstests/auth/killop_own_ops.js
index dbb1689708c..2d851f02697 100644
--- a/jstests/auth/killop_own_ops.js
+++ b/jstests/auth/killop_own_ops.js
@@ -145,9 +145,7 @@ var conn = MongoRunner.runMongod({auth: ""});
runTest(conn, "setYieldAllLocksHang");
MongoRunner.stopMongod(conn);
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st =
- new ShardingTest({shards: 1, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 1, keyFile: 'jstests/libs/key1'});
// Use a different failpoint in the sharded version, since the mongos does not have a
// setYieldAlllocksHang failpoint.
runTest(st.s, "waitInFindBeforeMakingBatch");
diff --git a/jstests/auth/list_all_local_sessions.js b/jstests/auth/list_all_local_sessions.js
index 92363515a00..3efe32fc3e1 100644
--- a/jstests/auth/list_all_local_sessions.js
+++ b/jstests/auth/list_all_local_sessions.js
@@ -49,13 +49,8 @@ const mongod = MongoRunner.runMongod({auth: ""});
runListAllLocalSessionsTest(mongod);
MongoRunner.stopMongod(mongod);
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- shards: 1,
- mongos: 1,
- config: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
-});
+const st =
+ new ShardingTest({shards: 1, mongos: 1, config: 1, other: {keyFile: 'jstests/libs/key1'}});
runListAllLocalSessionsTest(st.s0);
st.stop();
})();
diff --git a/jstests/auth/list_databases.js b/jstests/auth/list_databases_base.js
index 2e374e54fd6..c275cfabc3b 100644
--- a/jstests/auth/list_databases.js
+++ b/jstests/auth/list_databases_base.js
@@ -1,8 +1,6 @@
-// Auth tests for the listDatabases command.
-
-(function() {
'use strict';
+// Auth test the listDatabases command.
function runTest(mongod) {
const admin = mongod.getDB('admin');
admin.createUser({user: 'admin', pwd: 'pass', roles: jsTest.adminUserRoles});
@@ -148,20 +146,3 @@ function runTest(mongod) {
admin.logout();
});
}
-
-const mongod = MongoRunner.runMongod({auth: ""});
-runTest(mongod);
-MongoRunner.stopMongod(mongod);
-
-if (jsTest.options().storageEngine !== "mobile") {
- // TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
- const st = new ShardingTest({
- shards: 1,
- mongos: 1,
- config: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
- });
- runTest(st.s0);
- st.stop();
-}
-})();
diff --git a/jstests/auth/list_databases_mongod.js b/jstests/auth/list_databases_mongod.js
new file mode 100644
index 00000000000..4131c8f8691
--- /dev/null
+++ b/jstests/auth/list_databases_mongod.js
@@ -0,0 +1,12 @@
+/*
+ * Auth test for the listDatabases command on mongods.
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/list_databases_base.js");
+
+const mongod = MongoRunner.runMongod({auth: ""});
+runTest(mongod);
+MongoRunner.stopMongod(mongod);
+})();
diff --git a/jstests/auth/list_databases_sharded_cluster.js b/jstests/auth/list_databases_sharded_cluster.js
new file mode 100644
index 00000000000..29eb53dfc7e
--- /dev/null
+++ b/jstests/auth/list_databases_sharded_cluster.js
@@ -0,0 +1,14 @@
+/*
+ * Auth test for the listDatabases command on sharded clusters.
+ * @tags: [requires_sharding]
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/list_databases_base.js");
+
+const st =
+ new ShardingTest({shards: 1, mongos: 1, config: 1, other: {keyFile: 'jstests/libs/key1'}});
+runTest(st.s0);
+st.stop();
+})();
diff --git a/jstests/auth/list_local_sessions.js b/jstests/auth/list_local_sessions_base.js
index 3c16df48b8e..1901bd50914 100644
--- a/jstests/auth/list_local_sessions.js
+++ b/jstests/auth/list_local_sessions_base.js
@@ -1,6 +1,3 @@
-// All tests for the $listLocalSessions aggregation stage.
-
-(function() {
'use strict';
load('jstests/aggregation/extras/utils.js');
@@ -8,6 +5,7 @@ load('jstests/aggregation/extras/utils.js');
// implicit sessions.
TestData.disableImplicitSessions = true;
+// All tests for the $listLocalSessions aggregation stage.
function runListLocalSessionsTest(mongod) {
assert(mongod);
const admin = mongod.getDB('admin');
@@ -58,18 +56,3 @@ function runListLocalSessionsTest(mongod) {
[{'$listLocalSessions': {users: [{user: "user1", db: "test"}]}}],
ErrorCodes.Unauthorized);
}
-
-const mongod = MongoRunner.runMongod({auth: ""});
-runListLocalSessionsTest(mongod);
-MongoRunner.stopMongod(mongod);
-
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- shards: 1,
- mongos: 1,
- config: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
-});
-runListLocalSessionsTest(st.s0);
-st.stop();
-})();
diff --git a/jstests/auth/list_local_sessions_mongod.js b/jstests/auth/list_local_sessions_mongod.js
new file mode 100644
index 00000000000..76522521e65
--- /dev/null
+++ b/jstests/auth/list_local_sessions_mongod.js
@@ -0,0 +1,12 @@
+/*
+ * Auth test for the $listLocalSessions aggregation stage on mongods.
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/list_local_sessions_base.js");
+
+const mongod = MongoRunner.runMongod({auth: ""});
+runListLocalSessionsTest(mongod);
+MongoRunner.stopMongod(mongod);
+})();
diff --git a/jstests/auth/list_local_sessions_sharded_cluster.js b/jstests/auth/list_local_sessions_sharded_cluster.js
new file mode 100644
index 00000000000..1c331b9e5f6
--- /dev/null
+++ b/jstests/auth/list_local_sessions_sharded_cluster.js
@@ -0,0 +1,14 @@
+/*
+ * Auth test for the $listLocalSessions aggregation stage on sharded clusters.
+ * @tags: [requires_sharding]
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/list_local_sessions_base.js");
+
+const st =
+ new ShardingTest({shards: 1, mongos: 1, config: 1, other: {keyFile: 'jstests/libs/key1'}});
+runListLocalSessionsTest(st.s0);
+st.stop();
+})();
diff --git a/jstests/auth/list_sessions.js b/jstests/auth/list_sessions.js
index f91218d22e4..8ee24319bd5 100644
--- a/jstests/auth/list_sessions.js
+++ b/jstests/auth/list_sessions.js
@@ -76,13 +76,8 @@ const mongod = MongoRunner.runMongod({auth: ""});
runListSessionsTest(mongod);
MongoRunner.stopMongod(mongod);
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- shards: 1,
- mongos: 1,
- config: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
-});
+const st =
+ new ShardingTest({shards: 1, mongos: 1, config: 1, other: {keyFile: 'jstests/libs/key1'}});
runListSessionsTest(st.s0);
st.stop();
})();
diff --git a/jstests/auth/listcommands_preauth.js b/jstests/auth/listcommands_preauth_base.js
index fae33cf65db..01cabf04d64 100644
--- a/jstests/auth/listcommands_preauth.js
+++ b/jstests/auth/listcommands_preauth_base.js
@@ -1,8 +1,6 @@
-// Make sure that listCommands doesn't require authentication.
-
-(function() {
'use strict';
+// Make sure that listCommands doesn't require authentication.
function runTest(conn) {
const admin = conn.getDB('admin');
@@ -19,18 +17,3 @@ function runTest(conn) {
// listCommands should STILL work, because it does not require auth.
assert.commandWorked(admin.runCommand({listCommands: 1}), "listCommands should work pre-auth");
}
-
-const mongod = MongoRunner.runMongod({auth: ""});
-runTest(mongod);
-MongoRunner.stopMongod(mongod);
-
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- shards: 1,
- mongos: 1,
- config: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
-});
-runTest(st.s0);
-st.stop();
-})();
diff --git a/jstests/auth/listcommands_preauth_mongod.js b/jstests/auth/listcommands_preauth_mongod.js
new file mode 100644
index 00000000000..f049e75de7a
--- /dev/null
+++ b/jstests/auth/listcommands_preauth_mongod.js
@@ -0,0 +1,12 @@
+/*
+ * Make sure that listCommands on mongods doesn't require authentication.
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/listcommands_preauth_base.js");
+
+const mongod = MongoRunner.runMongod({auth: ""});
+runTest(mongod);
+MongoRunner.stopMongod(mongod);
+})(); \ No newline at end of file
diff --git a/jstests/auth/listcommands_preauth_sharded_cluster.js b/jstests/auth/listcommands_preauth_sharded_cluster.js
new file mode 100644
index 00000000000..76115d26f5e
--- /dev/null
+++ b/jstests/auth/listcommands_preauth_sharded_cluster.js
@@ -0,0 +1,14 @@
+/*
+ * Make sure that listCommands on sharded clusters doesn't require authentication.
+ * @tags: [requires_sharding]
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/listcommands_preauth_base.js");
+
+const st =
+ new ShardingTest({shards: 1, mongos: 1, config: 1, other: {keyFile: 'jstests/libs/key1'}});
+runTest(st.s0);
+st.stop();
+})(); \ No newline at end of file
diff --git a/jstests/auth/mongos_cache_invalidation.js b/jstests/auth/mongos_cache_invalidation.js
index 8e8e706d76a..fd7ef98e4f9 100644
--- a/jstests/auth/mongos_cache_invalidation.js
+++ b/jstests/auth/mongos_cache_invalidation.js
@@ -10,7 +10,6 @@ var hasAuthzError = function(result) {
assert.eq(authzErrorCode, result.code);
};
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
var st = new ShardingTest({
shards: 2,
config: 3,
@@ -19,8 +18,7 @@ var st = new ShardingTest({
{setParameter: "userCacheInvalidationIntervalSecs=5"},
{setParameter: "userCacheInvalidationIntervalSecs=600"}
],
- keyFile: 'jstests/libs/key1',
- other: {shardAsReplicaSet: false}
+ keyFile: 'jstests/libs/key1'
});
st.s1.getDB('admin').createUser({user: 'root', pwd: 'pwd', roles: ['root']});
diff --git a/jstests/auth/pseudo_commands.js b/jstests/auth/pseudo_commands.js
index 29134f8bca7..392be3df9bf 100644
--- a/jstests/auth/pseudo_commands.js
+++ b/jstests/auth/pseudo_commands.js
@@ -17,6 +17,8 @@ function runTest(conn) {
admin.createUser({user: 'spencer', pwd: 'pwd', roles: ['myRole']});
var db = conn.getDB('admin');
+ db.auth('admin', 'pwd');
+ var arbitraryShard = db.getSiblingDB("config").shards.findOne();
db.auth('spencer', 'pwd');
/**
@@ -115,7 +117,7 @@ function runTest(conn) {
try {
var opid;
if (isMongos(db)) { // opid format different between mongos and mongod
- opid = "shard0000:1234";
+ opid = arbitraryShard._id + ":1234";
} else {
opid = 1234;
}
@@ -191,8 +193,6 @@ runTest(conn);
MongoRunner.stopMongod(conn);
jsTest.log('Test sharding');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runTest(st.s);
st.stop();
diff --git a/jstests/auth/resource_pattern_matching.js b/jstests/auth/resource_pattern_matching.js
index ccefb8f51f5..3a8fe24c957 100644
--- a/jstests/auth/resource_pattern_matching.js
+++ b/jstests/auth/resource_pattern_matching.js
@@ -243,17 +243,12 @@ rst.stopSet();
print('--- done with the rs tests ---');
print('--- sharding test ---');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
var st = new ShardingTest({
mongos: 2,
shard: 1,
keyFile: keyfile,
- other: {
- mongosOptions: {'auth': null},
- configOptions: {'auth': null},
- shardOptions: {'auth': null},
- shardAsReplicaSet: false
- }
+ other:
+ {mongosOptions: {'auth': null}, configOptions: {'auth': null}, shardOptions: {'auth': null}}
});
run_tests(st.s0.getDB('admin'), st.s1.getDB('admin'));
st.stop();
diff --git a/jstests/auth/role_management_commands_edge_cases.js b/jstests/auth/role_management_commands_edge_cases.js
index 023f01df95e..9ec4ca77461 100644
--- a/jstests/auth/role_management_commands_edge_cases.js
+++ b/jstests/auth/role_management_commands_edge_cases.js
@@ -376,8 +376,6 @@ runTest(conn);
MongoRunner.stopMongod(conn);
jsTest.log('Test sharding');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runTest(st.s);
st.stop();
diff --git a/jstests/auth/role_management_commands_sharded_wc_1.js b/jstests/auth/role_management_commands_sharded_wc_1.js
index 9e7e3482d76..e054d7820d6 100644
--- a/jstests/auth/role_management_commands_sharded_wc_1.js
+++ b/jstests/auth/role_management_commands_sharded_wc_1.js
@@ -5,14 +5,7 @@
load('jstests/auth/role_management_commands_lib.js');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest({
- shards: 2,
- config: 3,
- keyFile: 'jstests/libs/key1',
- useHostname: false,
- other: {shardAsReplicaSet: false}
-});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1', useHostname: false});
runAllRoleManagementCommandsTests(st.s, {w: 1});
st.stop();
})();
diff --git a/jstests/auth/role_management_commands_sharded_wc_majority.js b/jstests/auth/role_management_commands_sharded_wc_majority.js
index 155aa931feb..857176a28fa 100644
--- a/jstests/auth/role_management_commands_sharded_wc_majority.js
+++ b/jstests/auth/role_management_commands_sharded_wc_majority.js
@@ -7,14 +7,7 @@
load('jstests/auth/role_management_commands_lib.js');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest({
- shards: 2,
- config: 3,
- keyFile: 'jstests/libs/key1',
- useHostname: false,
- other: {shardAsReplicaSet: false}
-});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1', useHostname: false});
runAllRoleManagementCommandsTests(st.s, {w: 'majority', wtimeout: 60 * 1000});
st.stop();
})();
diff --git a/jstests/auth/user_defined_roles.js b/jstests/auth/user_defined_roles.js
index ba9d2aba87f..db976bea63d 100644
--- a/jstests/auth/user_defined_roles.js
+++ b/jstests/auth/user_defined_roles.js
@@ -145,8 +145,6 @@ runTest(conn);
MongoRunner.stopMongod(conn);
jsTest.log('Test sharding');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runTest(st.s);
st.stop();
diff --git a/jstests/auth/user_management_commands_edge_cases.js b/jstests/auth/user_management_commands_edge_cases.js
index d197d0105b2..a690b65c1b1 100644
--- a/jstests/auth/user_management_commands_edge_cases.js
+++ b/jstests/auth/user_management_commands_edge_cases.js
@@ -280,8 +280,6 @@ runTest(conn);
MongoRunner.stopMongod(conn);
jsTest.log('Test sharding');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runTest(st.s);
st.stop();
diff --git a/jstests/auth/user_management_commands_sharded_wc_1.js b/jstests/auth/user_management_commands_sharded_wc_1.js
index 675efba731a..6287315efa6 100644
--- a/jstests/auth/user_management_commands_sharded_wc_1.js
+++ b/jstests/auth/user_management_commands_sharded_wc_1.js
@@ -7,9 +7,7 @@
load('jstests/auth/user_management_commands_lib.js');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runAllUserManagementCommandsTests(st.s, {w: 1});
st.stop();
})();
diff --git a/jstests/auth/user_management_commands_sharded_wc_majority.js b/jstests/auth/user_management_commands_sharded_wc_majority.js
index d9e0a75d543..6df88a66903 100644
--- a/jstests/auth/user_management_commands_sharded_wc_majority.js
+++ b/jstests/auth/user_management_commands_sharded_wc_majority.js
@@ -5,9 +5,7 @@
load('jstests/auth/user_management_commands_lib.js');
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 2, config: 3, keyFile: 'jstests/libs/key1', other: {shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 2, config: 3, keyFile: 'jstests/libs/key1'});
runAllUserManagementCommandsTests(st.s, {w: 'majority', wtimeout: 60 * 1000});
st.stop();
})();
diff --git a/jstests/auth/usersInfo.js b/jstests/auth/usersInfo_base.js
index 81b9b4ee870..5be6aae182c 100644
--- a/jstests/auth/usersInfo.js
+++ b/jstests/auth/usersInfo_base.js
@@ -1,7 +1,6 @@
-// Test behavior and edge cases in usersInfo
-(function() {
'use strict';
+// Test behavior and edge cases in usersInfo
function runTest(conn) {
let db = conn.getDB("test");
let emptyDB = conn.getDB("test2");
@@ -34,13 +33,3 @@ function runTest(conn) {
const allInfo = assert.commandWorked(db.runCommand({usersInfo: {forAllDBs: true}}));
assert.eq(userCount + 1, allInfo.users.length);
}
-
-const m = MongoRunner.runMongod();
-runTest(m);
-MongoRunner.stopMongod(m);
-
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({shards: 1, mongos: 1, config: 1, other: {shardAsReplicaSet: false}});
-runTest(st.s0);
-st.stop();
-}());
diff --git a/jstests/auth/usersInfo_mongod.js b/jstests/auth/usersInfo_mongod.js
new file mode 100644
index 00000000000..4a367681060
--- /dev/null
+++ b/jstests/auth/usersInfo_mongod.js
@@ -0,0 +1,13 @@
+/*
+ * Test behavior and edge cases in usersInfo on mongods.
+ */
+
+(function() {
+'use strict';
+
+load("jstests/auth/usersInfo_base.js");
+
+const m = MongoRunner.runMongod();
+runTest(m);
+MongoRunner.stopMongod(m);
+}());
diff --git a/jstests/auth/usersInfo_sharded_cluster.js b/jstests/auth/usersInfo_sharded_cluster.js
new file mode 100644
index 00000000000..6235dd95e03
--- /dev/null
+++ b/jstests/auth/usersInfo_sharded_cluster.js
@@ -0,0 +1,13 @@
+/*
+ * Test behavior and edge cases in usersInfo on sharded clusters.
+ * @tags: [requires_sharding]
+ */
+(function() {
+'use strict';
+
+load("jstests/auth/usersInfo_base.js");
+
+const st = new ShardingTest({shards: 1, mongos: 1, config: 1});
+runTest(st.s0);
+st.stop();
+}());
diff --git a/jstests/auth/views_authz.js b/jstests/auth/views_authz.js
index f510912f3fe..eaab62647cb 100644
--- a/jstests/auth/views_authz.js
+++ b/jstests/auth/views_authz.js
@@ -133,13 +133,8 @@ runTest(mongod);
MongoRunner.stopMongod(mongod);
// Run the test on a sharded cluster.
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-let cluster = new ShardingTest({
- shards: 1,
- mongos: 1,
- keyFile: "jstests/libs/key1",
- other: {shardOptions: {auth: ""}, shardAsReplicaSet: false}
-});
+let cluster = new ShardingTest(
+ {shards: 1, mongos: 1, keyFile: "jstests/libs/key1", other: {shardOptions: {auth: ""}}});
runTest(cluster);
cluster.stop();
}());
diff --git a/jstests/noPassthrough/auth_reject_mismatching_logical_times.js b/jstests/noPassthrough/auth_reject_mismatching_logical_times.js
index 13b971c7bc5..00b16f739ab 100644
--- a/jstests/noPassthrough/auth_reject_mismatching_logical_times.js
+++ b/jstests/noPassthrough/auth_reject_mismatching_logical_times.js
@@ -32,12 +32,8 @@ function assertAcceptsValidLogicalTime(db) {
}
// Start the sharding test with auth on.
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest({
- mongos: 1,
- manualAddShard: true,
- other: {keyFile: "jstests/libs/key1", shardAsReplicaSet: false}
-});
+const st =
+ new ShardingTest({mongos: 1, manualAddShard: true, other: {keyFile: "jstests/libs/key1"}});
// Create admin user and authenticate as them.
st.s.getDB("admin").createUser({user: "foo", pwd: "bar", roles: jsTest.adminUserRoles});
@@ -47,7 +43,6 @@ st.s.getDB("admin").auth("foo", "bar");
const rst = new ReplSetTest({nodes: 2});
rst.startSet({keyFile: "jstests/libs/key1", shardsvr: ""});
-// TODO: Wait for stable recovery timestamp when SERVER-32672 is fixed.
rst.initiateWithAnyNodeAsPrimary(
null, "replSetInitiate", {doNotWaitForStableRecoveryTimestamp: true});
assert.commandWorked(st.s.adminCommand({addShard: rst.getURL()}));
diff --git a/jstests/noPassthrough/cross_user_getmore_has_no_side_effects.js b/jstests/noPassthrough/cross_user_getmore_has_no_side_effects.js
index 1fe50111a8e..d89128a9249 100644
--- a/jstests/noPassthrough/cross_user_getmore_has_no_side_effects.js
+++ b/jstests/noPassthrough/cross_user_getmore_has_no_side_effects.js
@@ -4,9 +4,7 @@
// @tags: [requires_sharding]
(function() {
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-const st = new ShardingTest(
- {shards: 2, config: 1, other: {keyFile: "jstests/libs/key1", shardAsReplicaSet: false}});
+const st = new ShardingTest({shards: 2, config: 1, other: {keyFile: "jstests/libs/key1"}});
const kDBName = "test";
const adminDB = st.s.getDB('admin');
const testDB = st.s.getDB(kDBName);
diff --git a/jstests/noPassthrough/logical_session_cursor_checks.js b/jstests/noPassthrough/logical_session_cursor_checks.js
index f2af849ab68..ed12132276d 100644
--- a/jstests/noPassthrough/logical_session_cursor_checks.js
+++ b/jstests/noPassthrough/logical_session_cursor_checks.js
@@ -76,13 +76,8 @@ Standalone.prototype.getConn = function() {
};
function Sharding() {
- // TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
- this.st = new ShardingTest({
- shards: 1,
- config: 1,
- mongos: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
- });
+ this.st =
+ new ShardingTest({shards: 1, config: 1, mongos: 1, other: {keyFile: 'jstests/libs/key1'}});
}
Sharding.prototype.stop = function() {
diff --git a/jstests/noPassthrough/unsupported_change_stream_deployments.js b/jstests/noPassthrough/unsupported_change_stream_deployments.js
index 6bfa8d1fc33..a8f2e02ab66 100644
--- a/jstests/noPassthrough/unsupported_change_stream_deployments.js
+++ b/jstests/noPassthrough/unsupported_change_stream_deployments.js
@@ -36,7 +36,6 @@ assertChangeStreamNotSupportedOnConnection(conn);
assert.eq(0, MongoRunner.stopMongod(conn));
// Test a sharded cluster with standalone shards.
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
const clusterWithStandalones = new ShardingTest({
shards: 2,
other: {shardOptions: {enableMajorityReadConcern: ""}},
diff --git a/jstests/sharding/advance_cluster_time_action_type.js b/jstests/sharding/advance_cluster_time_action_type.js
index 1fff92c5e1d..fb3f1184e84 100644
--- a/jstests/sharding/advance_cluster_time_action_type.js
+++ b/jstests/sharding/advance_cluster_time_action_type.js
@@ -8,14 +8,7 @@
// TODO SERVER-35447: Multiple users cannot be authenticated on one connection within a session.
TestData.disableImplicitSessions = true;
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-let st = new ShardingTest({
- mongos: 1,
- config: 1,
- shards: 1,
- keyFile: 'jstests/libs/key1',
- other: {shardAsReplicaSet: false}
-});
+let st = new ShardingTest({mongos: 1, config: 1, shards: 1, keyFile: 'jstests/libs/key1'});
let adminDB = st.s.getDB('admin');
diff --git a/jstests/sharding/aggregation_currentop.js b/jstests/sharding/aggregation_currentop.js
index 78b15dfb55b..f3b6ac3be5c 100644
--- a/jstests/sharding/aggregation_currentop.js
+++ b/jstests/sharding/aggregation_currentop.js
@@ -31,8 +31,6 @@ load("jstests/libs/namespace_utils.js"); // For getCollectionNameFromFullNamesp
// briefly authenticates as __system and recieves clusterTime metadata then will fail trying to
// gossip that time later in setup.
//
-// TODO SERVER-32672: remove this flag.
-TestData.skipGossipingClusterTime = true;
const key = "jstests/libs/key1";
diff --git a/jstests/sharding/auth.js b/jstests/sharding/auth.js
index 5131c512271..0bf917135ef 100644
--- a/jstests/sharding/auth.js
+++ b/jstests/sharding/auth.js
@@ -16,8 +16,6 @@ load("jstests/replsets/rslib.js");
// briefly authenticates as __system and recieves clusterTime metadata then will fail trying to
// gossip that time later in setup.
//
-// TODO SERVER-32672: remove this flag.
-TestData.skipGossipingClusterTime = true;
var adminUser = {db: "admin", username: "foo", password: "bar"};
diff --git a/jstests/sharding/auth2.js b/jstests/sharding/auth2.js
index d1d6cb20156..8a763f54569 100644
--- a/jstests/sharding/auth2.js
+++ b/jstests/sharding/auth2.js
@@ -1,11 +1,9 @@
(function() {
'use strict';
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
var st = new ShardingTest({
shards: 2,
- other:
- {chunkSize: 1, useHostname: true, keyFile: 'jstests/libs/key1', shardAsReplicaSet: false},
+ other: {chunkSize: 1, useHostname: true, keyFile: 'jstests/libs/key1'},
});
var mongos = st.s;
diff --git a/jstests/sharding/authCommands.js b/jstests/sharding/authCommands.js
index 2692bc9bc42..6c3f905f266 100644
--- a/jstests/sharding/authCommands.js
+++ b/jstests/sharding/authCommands.js
@@ -15,8 +15,6 @@ load("jstests/replsets/rslib.js");
// briefly authenticates as __system and recieves clusterTime metadata then will fail trying to
// gossip that time later in setup.
//
-// TODO SERVER-32672: remove this flag.
-TestData.skipGossipingClusterTime = true;
var st = new ShardingTest({
shards: 2,
diff --git a/jstests/sharding/authConnectionHook.js b/jstests/sharding/authConnectionHook.js
index 73e81393d44..08e1d60db28 100644
--- a/jstests/sharding/authConnectionHook.js
+++ b/jstests/sharding/authConnectionHook.js
@@ -16,11 +16,8 @@ TestData.skipCheckingUUIDsConsistentAcrossCluster = true;
(function() {
'use strict';
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest({
- shards: 2,
- other: {keyFile: 'jstests/libs/key1', useHostname: true, chunkSize: 1, shardAsReplicaSet: false}
-});
+var st = new ShardingTest(
+ {shards: 2, other: {keyFile: 'jstests/libs/key1', useHostname: true, chunkSize: 1}});
var mongos = st.s;
var adminDB = mongos.getDB('admin');
@@ -31,7 +28,7 @@ adminDB.createUser({user: 'admin', pwd: 'password', roles: jsTest.adminUserRoles
adminDB.auth('admin', 'password');
adminDB.runCommand({enableSharding: "test"});
-st.ensurePrimaryShard('test', 'shard0001');
+st.ensurePrimaryShard('test', st.shard1.shardName);
adminDB.runCommand({shardCollection: "test.foo", key: {x: 1}});
for (var i = 0; i < 100; i++) {
@@ -45,8 +42,8 @@ adminDB.runCommand({moveChunk: "test.foo", find: {x: 25}, to: otherShard, _waitF
st.printShardingStatus();
-MongoRunner.stopMongod(st.shard0);
-st.shard0 = MongoRunner.runMongod({restart: st.shard0});
+st.rs0.stopSet(undefined, true);
+st.rs0.startSet({}, true);
// May fail the first couple times due to socket exceptions
assert.soon(function() {
diff --git a/jstests/sharding/auth_add_shard.js b/jstests/sharding/auth_add_shard.js
index 6c3c298b373..b2c0c870b09 100644
--- a/jstests/sharding/auth_add_shard.js
+++ b/jstests/sharding/auth_add_shard.js
@@ -14,9 +14,7 @@ function login(userObj) {
var adminUser = {db: "admin", username: "foo", password: "bar"};
// set up a 2 shard cluster with keyfile
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 1, mongos: 1, other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 1, mongos: 1, other: {keyFile: 'jstests/libs/key1'}});
var mongos = st.s0;
var admin = mongos.getDB("admin");
@@ -34,6 +32,7 @@ login(adminUser);
assert.eq(1, st.config.shards.count(), "initial server count wrong");
// start a mongod with NO keyfile
+// TODO: SERVER-43921 Make auth_add_shard.js start shards as replica sets.
var conn = MongoRunner.runMongod({shardsvr: ""});
print(conn);
@@ -46,9 +45,11 @@ MongoRunner.stopMongod(conn);
//--------------- Test 2 --------------------
// start mongod again, this time with keyfile
+// TODO: SERVER-43921 Make auth_add_shard.js start shards as replica sets.
var conn = MongoRunner.runMongod({keyFile: "jstests/libs/key1", shardsvr: ""});
// try adding the new shard
-assert.commandWorked(admin.runCommand({addShard: conn.host}));
+var addShardRes = admin.runCommand({addShard: conn.host});
+assert.commandWorked(addShardRes);
// Add some data
var db = mongos.getDB("foo");
@@ -56,7 +57,7 @@ var collA = mongos.getCollection("foo.bar");
// enable sharding on a collection
assert.commandWorked(admin.runCommand({enableSharding: "" + collA.getDB()}));
-st.ensurePrimaryShard("foo", "shard0000");
+st.ensurePrimaryShard("foo", st.shard0.shardName);
assert.commandWorked(admin.runCommand({shardCollection: "" + collA, key: {_id: 1}}));
@@ -67,7 +68,8 @@ for (var i = 0; i < 4; i++) {
}
// move a chunk
-assert.commandWorked(admin.runCommand({moveChunk: "foo.bar", find: {_id: 1}, to: "shard0001"}));
+assert.commandWorked(
+ admin.runCommand({moveChunk: "foo.bar", find: {_id: 1}, to: addShardRes.shardAdded}));
// verify the chunk was moved
admin.runCommand({flushRouterConfig: 1});
diff --git a/jstests/sharding/auth_no_config_primary.js b/jstests/sharding/auth_no_config_primary.js
index 57d6f2109b0..a9ed9a5c21a 100644
--- a/jstests/sharding/auth_no_config_primary.js
+++ b/jstests/sharding/auth_no_config_primary.js
@@ -14,9 +14,7 @@ TestData.skipCheckDBHashes = true;
(function() {
'use strict';
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st =
- new ShardingTest({shards: 1, other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 1, other: {keyFile: 'jstests/libs/key1'}});
st.s.getDB('admin').createUser({user: 'root', pwd: 'pass', roles: ['root']});
st.s.getDB('admin').auth('root', 'pass');
diff --git a/jstests/sharding/auth_sharding_cmd_metadata.js b/jstests/sharding/auth_sharding_cmd_metadata.js
index d4474a26da7..8744e6dded6 100644
--- a/jstests/sharding/auth_sharding_cmd_metadata.js
+++ b/jstests/sharding/auth_sharding_cmd_metadata.js
@@ -5,7 +5,7 @@
"use strict";
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
+// TODO: SERVER-43938 Make auth_sharding_cmd_metadata.js start shards as replica sets.
var st =
new ShardingTest({shards: 1, other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}});
diff --git a/jstests/sharding/auth_slaveok_routing.js b/jstests/sharding/auth_slaveok_routing.js
index 480d0c4318b..8eff7833c9b 100644
--- a/jstests/sharding/auth_slaveok_routing.js
+++ b/jstests/sharding/auth_slaveok_routing.js
@@ -19,8 +19,6 @@ load("jstests/replsets/rslib.js");
// briefly authenticates as __system and recieves clusterTime metadata then will fail trying to
// gossip that time later in setup.
//
-// TODO SERVER-32672: remove this flag.
-TestData.skipGossipingClusterTime = true;
/**
* Checks if a query to the given collection will be routed to the secondary. Returns true if
@@ -39,9 +37,7 @@ function doesRouteToSec(coll, query) {
}
var rsOpts = {oplogSize: 50};
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest(
- {shards: 1, rs: rsOpts, other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}});
+var st = new ShardingTest({shards: 1, rs: rsOpts, other: {keyFile: 'jstests/libs/key1'}});
var mongos = st.s;
var replTest = st.rs0;
diff --git a/jstests/sharding/authmr.js b/jstests/sharding/authmr.js
index 9b0fbe240ce..e3c80f3ad55 100644
--- a/jstests/sharding/authmr.js
+++ b/jstests/sharding/authmr.js
@@ -27,13 +27,8 @@ function assertInsert(collection, obj) {
assert.commandWorked(collection.insert(obj));
}
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var cluster = new ShardingTest({
- name: "authmr",
- shards: 1,
- mongos: 1,
- other: {keyFile: "jstests/libs/key1", shardAsReplicaSet: false}
-});
+var cluster =
+ new ShardingTest({name: "authmr", shards: 1, mongos: 1, other: {keyFile: "jstests/libs/key1"}});
// Set up the test data.
(function() {
diff --git a/jstests/sharding/authwhere.js b/jstests/sharding/authwhere.js
index e9b338801bf..bd0d4721f85 100644
--- a/jstests/sharding/authwhere.js
+++ b/jstests/sharding/authwhere.js
@@ -27,13 +27,8 @@ function assertInsert(collection, obj) {
assert.commandWorked(collection.insert(obj));
}
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var cluster = new ShardingTest({
- name: "authwhere",
- shards: 1,
- mongos: 1,
- other: {keyFile: 'jstests/libs/key1', shardAsReplicaSet: false}
-});
+var cluster = new ShardingTest(
+ {name: "authwhere", shards: 1, mongos: 1, other: {keyFile: 'jstests/libs/key1'}});
// Set up the test data.
(function() {
diff --git a/jstests/sharding/cleanup_orphaned_auth.js b/jstests/sharding/cleanup_orphaned_auth.js
index a54030fbf12..8b0fac00f5d 100644
--- a/jstests/sharding/cleanup_orphaned_auth.js
+++ b/jstests/sharding/cleanup_orphaned_auth.js
@@ -23,11 +23,7 @@ function assertUnauthorized(res, msg) {
doassert(finalMsg);
}
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
-var st = new ShardingTest({
- auth: true,
- other: {keyFile: 'jstests/libs/key1', useHostname: false, shardAsReplicaSet: false}
-});
+var st = new ShardingTest({auth: true, other: {keyFile: 'jstests/libs/key1', useHostname: false}});
var shardAdmin = st.shard0.getDB('admin');
shardAdmin.createUser({user: 'admin', pwd: 'x', roles: ['clusterAdmin', 'userAdminAnyDatabase']});
diff --git a/jstests/sharding/localhostAuthBypass.js b/jstests/sharding/localhostAuthBypass.js
index c2f9a8a75ad..6dd8a9d6d62 100644
--- a/jstests/sharding/localhostAuthBypass.js
+++ b/jstests/sharding/localhostAuthBypass.js
@@ -178,7 +178,6 @@ var setupSharding = function(shardingTest) {
};
var start = function() {
- // TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
return new ShardingTest({
auth: "",
shards: numShards,
@@ -187,7 +186,6 @@ var start = function() {
chunkSize: 1,
useHostname:
false, // Must use localhost to take advantage of the localhost auth bypass
- shardAsReplicaSet: false
}
});
};
@@ -208,10 +206,7 @@ var shutdown = function(st) {
}
for (var i = 0; i < st._connections.length; i++) {
- var conn = st["shard" + i];
- MongoRunner.stopMongod(conn,
- /*signal*/ false,
- {auth: {user: username, pwd: password}});
+ st["rs" + i].stopSet(/*signal*/ false, {auth: {user: username, pwd: password}});
}
for (var i = 0; i < st._configServers.length; i++) {
diff --git a/jstests/sharding/mongod_returns_no_cluster_time_without_keys.js b/jstests/sharding/mongod_returns_no_cluster_time_without_keys.js
index 82bdaeed018..2665415aab5 100644
--- a/jstests/sharding/mongod_returns_no_cluster_time_without_keys.js
+++ b/jstests/sharding/mongod_returns_no_cluster_time_without_keys.js
@@ -15,8 +15,6 @@ TestData.disableImplicitSessions = true;
load("jstests/multiVersion/libs/multi_rs.js");
-// TODO SERVER-32672: remove this flag.
-TestData.skipGossipingClusterTime = true;
const keyFile = 'jstests/libs/key1';
const adminUser = {
db: "admin",
diff --git a/jstests/sharding/mongos_rs_auth_shard_failure_tolerance.js b/jstests/sharding/mongos_rs_auth_shard_failure_tolerance.js
index fa03a0310ba..226548fa88e 100644
--- a/jstests/sharding/mongos_rs_auth_shard_failure_tolerance.js
+++ b/jstests/sharding/mongos_rs_auth_shard_failure_tolerance.js
@@ -21,8 +21,6 @@ TestData.skipCheckingUUIDsConsistentAcrossCluster = true;
// authenticates as __system and recieves clusterTime metadata then will fail trying to gossip that
// time later in setup.
//
-// TODO SERVER-32672: remove this flag.
-TestData.skipGossipingClusterTime = true;
// TODO SERVER-35447: Multiple users cannot be authenticated on one connection within a session.
TestData.disableImplicitSessions = true;
diff --git a/jstests/ssl/libs/ssl_helpers.js b/jstests/ssl/libs/ssl_helpers.js
index d41fc6b7f10..b2aabd36b7d 100644
--- a/jstests/ssl/libs/ssl_helpers.js
+++ b/jstests/ssl/libs/ssl_helpers.js
@@ -115,7 +115,8 @@ function mixedShardTest(options1, options2, shouldSucceed) {
// authorized to do if auth is enabled.
//
// Once SERVER-14017 is fixed the "enableBalancer" line can be removed.
- // TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
+ // TODO: SERVER-43899 Make sharding_with_x509.js and mixed_mode_sharded_transition.js start
+ // shards as replica sets.
var st = new ShardingTest({
mongos: [options1],
config: [options1],
diff --git a/jstests/ssl/sharding_with_x509.js b/jstests/ssl/sharding_with_x509.js
index d52d1e20d17..d00417c24f1 100644
--- a/jstests/ssl/sharding_with_x509.js
+++ b/jstests/ssl/sharding_with_x509.js
@@ -15,7 +15,8 @@ var x509_options = {
// Start ShardingTest with enableBalancer because ShardingTest attempts to turn off the balancer
// otherwise, which it will not be authorized to do. Once SERVER-14017 is fixed the
// "enableBalancer" line could be removed.
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
+// TODO: SERVER-43899 Make sharding_with_x509.js and mixed_mode_sharded_transition.js start shards
+// as replica sets.
var st = new ShardingTest({
shards: 2,
mongos: 1,
diff --git a/jstests/ssl/ssl_fragment.js b/jstests/ssl/ssl_fragment.js
index 4e15262e57f..e585b9ac706 100644
--- a/jstests/ssl/ssl_fragment.js
+++ b/jstests/ssl/ssl_fragment.js
@@ -45,17 +45,11 @@ const mongod = MongoRunner.runMongod(options);
runTest(mongod);
MongoRunner.stopMongod(mongod);
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
const st = new ShardingTest({
shards: 3,
mongos: 1,
config: 1,
- other: {
- configOptions: options,
- mongosOptions: mongosOptions,
- shardOptions: options,
- shardAsReplicaSet: false,
- }
+ other: {configOptions: options, mongosOptions: mongosOptions, shardOptions: options}
});
runTest(st.s0);
diff --git a/jstests/ssl/ssl_without_ca.js b/jstests/ssl/ssl_without_ca.js
index 93658ef5ca8..cbc3aaa37f1 100644
--- a/jstests/ssl/ssl_without_ca.js
+++ b/jstests/ssl/ssl_without_ca.js
@@ -42,17 +42,11 @@ assert.isnull(conn, "server started with x509 clusterAuthMode but no CA file");
jsTest.log("Assert mongos doesn\'t start with CA file missing and clusterAuthMode=x509.");
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
assert.throws(function() {
new ShardingTest({
shards: 1,
mongos: 1,
verbose: 2,
- other: {
- configOptions: sslParams,
- mongosOptions: sslParams,
- shardOptions: sslParams,
- shardAsReplicaSet: false
- }
+ other: {configOptions: sslParams, mongosOptions: sslParams, shardOptions: sslParams}
});
}, [], "mongos started with x509 clusterAuthMode but no CA file");
diff --git a/jstests/ssl/ssl_x509_roles.js b/jstests/ssl/ssl_x509_roles.js
index eb5bba46ab6..a0097bb5978 100644
--- a/jstests/ssl/ssl_x509_roles.js
+++ b/jstests/ssl/ssl_x509_roles.js
@@ -108,7 +108,6 @@ jsTestLog("2. Testing disabling x.509 auth with roles");
print("3. Testing x.509 auth to mongos");
{
- // TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
let st = new ShardingTest({
shards: 1,
mongos: 1,
@@ -117,8 +116,7 @@ print("3. Testing x.509 auth to mongos");
configOptions: x509_options,
mongosOptions: x509_options,
shardOptions: x509_options,
- useHostname: false,
- shardAsReplicaSet: false
+ useHostname: false
}
});
@@ -131,7 +129,6 @@ print("4. Testing x.509 auth to mongos with x509 roles disabled");
{
const localOptions =
Object.merge(x509_options, {setParameter: "allowRolesFromX509Certificates=false"});
- // TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
let st = new ShardingTest({
shards: 1,
mongos: 1,
@@ -140,8 +137,7 @@ print("4. Testing x.509 auth to mongos with x509 roles disabled");
configOptions: localOptions,
mongosOptions: localOptions,
shardOptions: localOptions,
- useHostname: false,
- shardAsReplicaSet: false
+ useHostname: false
}
});
diff --git a/jstests/ssl/x509_client.js b/jstests/ssl/x509_client.js
index a9ec1c01dbc..595b063b1a8 100644
--- a/jstests/ssl/x509_client.js
+++ b/jstests/ssl/x509_client.js
@@ -100,7 +100,6 @@ MongoRunner.stopMongod(mongo);
print("2. Testing x.509 auth to mongos");
-// TODO: Remove 'shardAsReplicaSet: false' when SERVER-32672 is fixed.
var st = new ShardingTest({
shards: 1,
mongos: 1,
@@ -109,8 +108,7 @@ var st = new ShardingTest({
configOptions: x509_options,
mongosOptions: x509_options,
shardOptions: x509_options,
- useHostname: false,
- shardAsReplicaSet: false
+ useHostname: false
}
});