summaryrefslogtreecommitdiff
path: root/src/mongo/s/commands
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/s/commands')
-rw-r--r--src/mongo/s/commands/cluster_add_shard_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_add_shard_to_zone_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_available_query_options_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_compact_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_control_balancer_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_count_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_db_stats_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_drop_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_drop_database_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_enable_sharding_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_explain_cmd.cpp8
-rw-r--r--src/mongo/s/commands/cluster_find_and_modify_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_find_cmd.cpp8
-rw-r--r--src/mongo/s/commands/cluster_flush_router_config_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_fsync_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_ftdc_commands.cpp4
-rw-r--r--src/mongo/s/commands/cluster_get_last_error_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_get_prev_error_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_get_shard_map_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_get_shard_version_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_getmore_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_index_filter_cmd.cpp9
-rw-r--r--src/mongo/s/commands/cluster_is_db_grid_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_is_master_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_kill_op.cpp4
-rw-r--r--src/mongo/s/commands/cluster_list_databases_cmd.cpp8
-rw-r--r--src/mongo/s/commands/cluster_list_shards_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_map_reduce_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_merge_chunks_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_move_chunk_cmd.cpp5
-rw-r--r--src/mongo/s/commands/cluster_move_primary_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_multicast.cpp5
-rw-r--r--src/mongo/s/commands/cluster_netstat_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_pipeline_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_plan_cache_cmd.cpp8
-rw-r--r--src/mongo/s/commands/cluster_profile_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_remove_shard_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_remove_shard_from_zone_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_repl_set_get_status_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_reset_error_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_set_feature_compatibility_version_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_shard_collection_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_split_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_update_zone_key_range_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_user_management_commands.cpp92
-rw-r--r--src/mongo/s/commands/cluster_whats_my_uri_cmd.cpp4
-rw-r--r--src/mongo/s/commands/cluster_write_cmd.cpp4
-rw-r--r--src/mongo/s/commands/commands_public.cpp20
48 files changed, 181 insertions, 138 deletions
diff --git a/src/mongo/s/commands/cluster_add_shard_cmd.cpp b/src/mongo/s/commands/cluster_add_shard_cmd.cpp
index df13a652f37..56cdf9650ab 100644
--- a/src/mongo/s/commands/cluster_add_shard_cmd.cpp
+++ b/src/mongo/s/commands/cluster_add_shard_cmd.cpp
@@ -56,8 +56,8 @@ class AddShardCmd : public BasicCommand {
public:
AddShardCmd() : BasicCommand("addShard", "addshard") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_add_shard_to_zone_cmd.cpp b/src/mongo/s/commands/cluster_add_shard_to_zone_cmd.cpp
index 419ca7e2a0e..e82e6bc0817 100644
--- a/src/mongo/s/commands/cluster_add_shard_to_zone_cmd.cpp
+++ b/src/mongo/s/commands/cluster_add_shard_to_zone_cmd.cpp
@@ -69,8 +69,8 @@ class AddShardToZoneCmd : public BasicCommand {
public:
AddShardToZoneCmd() : BasicCommand("addShardToZone", "addshardtozone") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_available_query_options_cmd.cpp b/src/mongo/s/commands/cluster_available_query_options_cmd.cpp
index 8eccb031358..d209c2ace34 100644
--- a/src/mongo/s/commands/cluster_available_query_options_cmd.cpp
+++ b/src/mongo/s/commands/cluster_available_query_options_cmd.cpp
@@ -39,8 +39,8 @@ class AvailableQueryOptions : public BasicCommand {
public:
AvailableQueryOptions() : BasicCommand("availableQueryOptions", "availablequeryoptions") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool supportsWriteConcern(const BSONObj& cmd) const override {
diff --git a/src/mongo/s/commands/cluster_compact_cmd.cpp b/src/mongo/s/commands/cluster_compact_cmd.cpp
index d5fd03ae39a..3d933804c49 100644
--- a/src/mongo/s/commands/cluster_compact_cmd.cpp
+++ b/src/mongo/s/commands/cluster_compact_cmd.cpp
@@ -37,8 +37,8 @@ class CompactCmd : public BasicCommand {
public:
CompactCmd() : BasicCommand("compact") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_control_balancer_cmd.cpp b/src/mongo/s/commands/cluster_control_balancer_cmd.cpp
index 5a60b6bb8d8..11e05a559d0 100644
--- a/src/mongo/s/commands/cluster_control_balancer_cmd.cpp
+++ b/src/mongo/s/commands/cluster_control_balancer_cmd.cpp
@@ -50,8 +50,8 @@ public:
_configsvrCommandName(configsvrCommandName),
_authorizationAction(authorizationAction) {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const override {
+ return false;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_count_cmd.cpp b/src/mongo/s/commands/cluster_count_cmd.cpp
index 2c407b61005..f05f349982c 100644
--- a/src/mongo/s/commands/cluster_count_cmd.cpp
+++ b/src/mongo/s/commands/cluster_count_cmd.cpp
@@ -51,8 +51,8 @@ class ClusterCountCmd : public ErrmsgCommandDeprecated {
public:
ClusterCountCmd() : ErrmsgCommandDeprecated("count") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_db_stats_cmd.cpp b/src/mongo/s/commands/cluster_db_stats_cmd.cpp
index 35a24f7d81d..1d74af4d1e7 100644
--- a/src/mongo/s/commands/cluster_db_stats_cmd.cpp
+++ b/src/mongo/s/commands/cluster_db_stats_cmd.cpp
@@ -44,8 +44,8 @@ class DBStatsCmd : public ErrmsgCommandDeprecated {
public:
DBStatsCmd() : ErrmsgCommandDeprecated("dbStats", "dbstats") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
return false;
diff --git a/src/mongo/s/commands/cluster_drop_cmd.cpp b/src/mongo/s/commands/cluster_drop_cmd.cpp
index a77abe079a6..6a8081c20c2 100644
--- a/src/mongo/s/commands/cluster_drop_cmd.cpp
+++ b/src/mongo/s/commands/cluster_drop_cmd.cpp
@@ -45,8 +45,8 @@ class DropCmd : public BasicCommand {
public:
DropCmd() : BasicCommand("drop") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_drop_database_cmd.cpp b/src/mongo/s/commands/cluster_drop_database_cmd.cpp
index 207db3d3c0d..da0380565eb 100644
--- a/src/mongo/s/commands/cluster_drop_database_cmd.cpp
+++ b/src/mongo/s/commands/cluster_drop_database_cmd.cpp
@@ -46,8 +46,8 @@ class DropDatabaseCmd : public BasicCommand {
public:
DropDatabaseCmd() : BasicCommand("dropDatabase") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_enable_sharding_cmd.cpp b/src/mongo/s/commands/cluster_enable_sharding_cmd.cpp
index 1869632ef68..77bdbbb6681 100644
--- a/src/mongo/s/commands/cluster_enable_sharding_cmd.cpp
+++ b/src/mongo/s/commands/cluster_enable_sharding_cmd.cpp
@@ -52,8 +52,8 @@ class EnableShardingCmd : public ErrmsgCommandDeprecated {
public:
EnableShardingCmd() : ErrmsgCommandDeprecated("enableSharding", "enablesharding") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_explain_cmd.cpp b/src/mongo/s/commands/cluster_explain_cmd.cpp
index 3f435329d75..b734501ab36 100644
--- a/src/mongo/s/commands/cluster_explain_cmd.cpp
+++ b/src/mongo/s/commands/cluster_explain_cmd.cpp
@@ -61,8 +61,12 @@ public:
/**
* Running an explain on a secondary requires explicitly setting slaveOk.
*/
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kOptIn;
+ virtual bool slaveOk() const {
+ return false;
+ }
+
+ virtual bool slaveOverrideOk() const {
+ return true;
}
virtual bool maintenanceOk() const {
diff --git a/src/mongo/s/commands/cluster_find_and_modify_cmd.cpp b/src/mongo/s/commands/cluster_find_and_modify_cmd.cpp
index 922d271e870..90b5665e6a0 100644
--- a/src/mongo/s/commands/cluster_find_and_modify_cmd.cpp
+++ b/src/mongo/s/commands/cluster_find_and_modify_cmd.cpp
@@ -78,8 +78,8 @@ class FindAndModifyCmd : public BasicCommand {
public:
FindAndModifyCmd() : BasicCommand("findAndModify", "findandmodify") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_find_cmd.cpp b/src/mongo/s/commands/cluster_find_cmd.cpp
index 8b53c5b6f6b..9c8adb1a64b 100644
--- a/src/mongo/s/commands/cluster_find_cmd.cpp
+++ b/src/mongo/s/commands/cluster_find_cmd.cpp
@@ -65,8 +65,12 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kOptIn;
+ bool slaveOk() const final {
+ return false;
+ }
+
+ bool slaveOverrideOk() const final {
+ return true;
}
bool maintenanceOk() const final {
diff --git a/src/mongo/s/commands/cluster_flush_router_config_cmd.cpp b/src/mongo/s/commands/cluster_flush_router_config_cmd.cpp
index 2b76f374342..61f0f9d640a 100644
--- a/src/mongo/s/commands/cluster_flush_router_config_cmd.cpp
+++ b/src/mongo/s/commands/cluster_flush_router_config_cmd.cpp
@@ -39,8 +39,8 @@ class FlushRouterConfigCmd : public BasicCommand {
public:
FlushRouterConfigCmd() : BasicCommand("flushRouterConfig", "flushrouterconfig") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_fsync_cmd.cpp b/src/mongo/s/commands/cluster_fsync_cmd.cpp
index 3f578bc9ddb..fa6363ed9fb 100644
--- a/src/mongo/s/commands/cluster_fsync_cmd.cpp
+++ b/src/mongo/s/commands/cluster_fsync_cmd.cpp
@@ -42,8 +42,8 @@ class FsyncCommand : public ErrmsgCommandDeprecated {
public:
FsyncCommand() : ErrmsgCommandDeprecated("fsync") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_ftdc_commands.cpp b/src/mongo/s/commands/cluster_ftdc_commands.cpp
index 6942bec0bdb..c6c30cebf95 100644
--- a/src/mongo/s/commands/cluster_ftdc_commands.cpp
+++ b/src/mongo/s/commands/cluster_ftdc_commands.cpp
@@ -56,8 +56,8 @@ public:
return "get latest diagnostic data collection snapshot";
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool supportsWriteConcern(const BSONObj& cmd) const override {
diff --git a/src/mongo/s/commands/cluster_get_last_error_cmd.cpp b/src/mongo/s/commands/cluster_get_last_error_cmd.cpp
index 3134fbb22c3..9665072154d 100644
--- a/src/mongo/s/commands/cluster_get_last_error_cmd.cpp
+++ b/src/mongo/s/commands/cluster_get_last_error_cmd.cpp
@@ -195,8 +195,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
std::string help() const override {
diff --git a/src/mongo/s/commands/cluster_get_prev_error_cmd.cpp b/src/mongo/s/commands/cluster_get_prev_error_cmd.cpp
index d36e91916b8..399eccc6684 100644
--- a/src/mongo/s/commands/cluster_get_prev_error_cmd.cpp
+++ b/src/mongo/s/commands/cluster_get_prev_error_cmd.cpp
@@ -47,8 +47,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
std::string help() const override {
diff --git a/src/mongo/s/commands/cluster_get_shard_map_cmd.cpp b/src/mongo/s/commands/cluster_get_shard_map_cmd.cpp
index 6672c597a39..3b70cf27d94 100644
--- a/src/mongo/s/commands/cluster_get_shard_map_cmd.cpp
+++ b/src/mongo/s/commands/cluster_get_shard_map_cmd.cpp
@@ -47,8 +47,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
std::string help() const override {
diff --git a/src/mongo/s/commands/cluster_get_shard_version_cmd.cpp b/src/mongo/s/commands/cluster_get_shard_version_cmd.cpp
index 05f04d9249a..c55c77ef3f8 100644
--- a/src/mongo/s/commands/cluster_get_shard_version_cmd.cpp
+++ b/src/mongo/s/commands/cluster_get_shard_version_cmd.cpp
@@ -47,8 +47,8 @@ class GetShardVersion : public BasicCommand {
public:
GetShardVersion() : BasicCommand("getShardVersion", "getshardversion") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_getmore_cmd.cpp b/src/mongo/s/commands/cluster_getmore_cmd.cpp
index 4274efb7089..00784d5c55c 100644
--- a/src/mongo/s/commands/cluster_getmore_cmd.cpp
+++ b/src/mongo/s/commands/cluster_getmore_cmd.cpp
@@ -55,8 +55,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const final {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const final {
+ return true;
}
bool maintenanceOk() const final {
diff --git a/src/mongo/s/commands/cluster_index_filter_cmd.cpp b/src/mongo/s/commands/cluster_index_filter_cmd.cpp
index ba61748779f..c06c42f2ce0 100644
--- a/src/mongo/s/commands/cluster_index_filter_cmd.cpp
+++ b/src/mongo/s/commands/cluster_index_filter_cmd.cpp
@@ -61,10 +61,15 @@ public:
virtual ~ClusterIndexFilterCmd() {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kOptIn;
+ bool slaveOk() const {
+ return false;
+ }
+
+ bool slaveOverrideOk() const {
+ return true;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return false;
}
diff --git a/src/mongo/s/commands/cluster_is_db_grid_cmd.cpp b/src/mongo/s/commands/cluster_is_db_grid_cmd.cpp
index 297e4403c2f..3304202e4a7 100644
--- a/src/mongo/s/commands/cluster_is_db_grid_cmd.cpp
+++ b/src/mongo/s/commands/cluster_is_db_grid_cmd.cpp
@@ -43,8 +43,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual void addRequiredPrivileges(const std::string& dbname,
diff --git a/src/mongo/s/commands/cluster_is_master_cmd.cpp b/src/mongo/s/commands/cluster_is_master_cmd.cpp
index 220d97e9e36..8caf0cde2c4 100644
--- a/src/mongo/s/commands/cluster_is_master_cmd.cpp
+++ b/src/mongo/s/commands/cluster_is_master_cmd.cpp
@@ -53,8 +53,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
std::string help() const override {
diff --git a/src/mongo/s/commands/cluster_kill_op.cpp b/src/mongo/s/commands/cluster_kill_op.cpp
index 3418d4049be..bfeb02ea493 100644
--- a/src/mongo/s/commands/cluster_kill_op.cpp
+++ b/src/mongo/s/commands/cluster_kill_op.cpp
@@ -60,8 +60,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const final {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const final {
+ return true;
}
bool adminOnly() const final {
diff --git a/src/mongo/s/commands/cluster_list_databases_cmd.cpp b/src/mongo/s/commands/cluster_list_databases_cmd.cpp
index 064b89d3ca4..5a6d8a16552 100644
--- a/src/mongo/s/commands/cluster_list_databases_cmd.cpp
+++ b/src/mongo/s/commands/cluster_list_databases_cmd.cpp
@@ -56,8 +56,12 @@ class ListDatabasesCmd : public BasicCommand {
public:
ListDatabasesCmd() : BasicCommand("listDatabases", "listdatabases") {}
- AllowedOnSecondary secondaryAllowed() const final {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const final {
+ return true;
+ }
+
+ bool slaveOverrideOk() const final {
+ return true;
}
bool adminOnly() const final {
diff --git a/src/mongo/s/commands/cluster_list_shards_cmd.cpp b/src/mongo/s/commands/cluster_list_shards_cmd.cpp
index 59ceb90f106..309c45a3be2 100644
--- a/src/mongo/s/commands/cluster_list_shards_cmd.cpp
+++ b/src/mongo/s/commands/cluster_list_shards_cmd.cpp
@@ -50,8 +50,8 @@ public:
return true;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
bool supportsWriteConcern(const BSONObj& cmd) const override {
diff --git a/src/mongo/s/commands/cluster_map_reduce_cmd.cpp b/src/mongo/s/commands/cluster_map_reduce_cmd.cpp
index 5e58c1c0e68..8787beefc09 100644
--- a/src/mongo/s/commands/cluster_map_reduce_cmd.cpp
+++ b/src/mongo/s/commands/cluster_map_reduce_cmd.cpp
@@ -151,8 +151,8 @@ class MRCmd : public ErrmsgCommandDeprecated {
public:
MRCmd() : ErrmsgCommandDeprecated("mapReduce", "mapreduce") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_merge_chunks_cmd.cpp b/src/mongo/s/commands/cluster_merge_chunks_cmd.cpp
index ecdfa931cd4..abfe8fe2f08 100644
--- a/src/mongo/s/commands/cluster_merge_chunks_cmd.cpp
+++ b/src/mongo/s/commands/cluster_merge_chunks_cmd.cpp
@@ -80,8 +80,8 @@ public:
return true;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const override {
+ return false;
}
bool supportsWriteConcern(const BSONObj& cmd) const override {
diff --git a/src/mongo/s/commands/cluster_move_chunk_cmd.cpp b/src/mongo/s/commands/cluster_move_chunk_cmd.cpp
index e251376c920..d1a3ef74e84 100644
--- a/src/mongo/s/commands/cluster_move_chunk_cmd.cpp
+++ b/src/mongo/s/commands/cluster_move_chunk_cmd.cpp
@@ -55,9 +55,10 @@ class MoveChunkCmd : public ErrmsgCommandDeprecated {
public:
MoveChunkCmd() : ErrmsgCommandDeprecated("moveChunk", "movechunk") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
+
bool adminOnly() const override {
return true;
}
diff --git a/src/mongo/s/commands/cluster_move_primary_cmd.cpp b/src/mongo/s/commands/cluster_move_primary_cmd.cpp
index 34540a60b69..181c3a3b8fd 100644
--- a/src/mongo/s/commands/cluster_move_primary_cmd.cpp
+++ b/src/mongo/s/commands/cluster_move_primary_cmd.cpp
@@ -57,8 +57,8 @@ class MoveDatabasePrimaryCommand : public BasicCommand {
public:
MoveDatabasePrimaryCommand() : BasicCommand("movePrimary", "moveprimary") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_multicast.cpp b/src/mongo/s/commands/cluster_multicast.cpp
index b26bdbe4e88..d0d8d11c607 100644
--- a/src/mongo/s/commands/cluster_multicast.cpp
+++ b/src/mongo/s/commands/cluster_multicast.cpp
@@ -66,9 +66,10 @@ class MulticastCmd : public BasicCommand {
public:
MulticastCmd() : BasicCommand("multicast") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
+
bool adminOnly() const override {
return true;
}
diff --git a/src/mongo/s/commands/cluster_netstat_cmd.cpp b/src/mongo/s/commands/cluster_netstat_cmd.cpp
index 5dd1e0b1a1a..b8ffa72b530 100644
--- a/src/mongo/s/commands/cluster_netstat_cmd.cpp
+++ b/src/mongo/s/commands/cluster_netstat_cmd.cpp
@@ -40,8 +40,8 @@ class NetStatCmd : public BasicCommand {
public:
NetStatCmd() : BasicCommand("netstat") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_pipeline_cmd.cpp b/src/mongo/s/commands/cluster_pipeline_cmd.cpp
index 5983c0aa9c6..f9d972d4771 100644
--- a/src/mongo/s/commands/cluster_pipeline_cmd.cpp
+++ b/src/mongo/s/commands/cluster_pipeline_cmd.cpp
@@ -47,8 +47,8 @@ public:
"http://dochub.mongodb.org/core/aggregation for more details.";
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_plan_cache_cmd.cpp b/src/mongo/s/commands/cluster_plan_cache_cmd.cpp
index 8fa4c1edfc2..2e1b63653cd 100644
--- a/src/mongo/s/commands/cluster_plan_cache_cmd.cpp
+++ b/src/mongo/s/commands/cluster_plan_cache_cmd.cpp
@@ -54,8 +54,12 @@ class ClusterPlanCacheCmd : public BasicCommand {
public:
virtual ~ClusterPlanCacheCmd() {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kOptIn;
+ bool slaveOk() const {
+ return false;
+ }
+
+ bool slaveOverrideOk() const {
+ return true;
}
bool supportsWriteConcern(const BSONObj& cmd) const override {
diff --git a/src/mongo/s/commands/cluster_profile_cmd.cpp b/src/mongo/s/commands/cluster_profile_cmd.cpp
index 5129922d3a5..cab007638d9 100644
--- a/src/mongo/s/commands/cluster_profile_cmd.cpp
+++ b/src/mongo/s/commands/cluster_profile_cmd.cpp
@@ -37,8 +37,8 @@ class ProfileCmd : public ErrmsgCommandDeprecated {
public:
ProfileCmd() : ErrmsgCommandDeprecated("profile") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_remove_shard_cmd.cpp b/src/mongo/s/commands/cluster_remove_shard_cmd.cpp
index 336f51d0437..51d863cc668 100644
--- a/src/mongo/s/commands/cluster_remove_shard_cmd.cpp
+++ b/src/mongo/s/commands/cluster_remove_shard_cmd.cpp
@@ -49,8 +49,8 @@ public:
return "remove a shard from the system.";
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const override {
+ return false;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_remove_shard_from_zone_cmd.cpp b/src/mongo/s/commands/cluster_remove_shard_from_zone_cmd.cpp
index bc35d3c573c..0118f75ee14 100644
--- a/src/mongo/s/commands/cluster_remove_shard_from_zone_cmd.cpp
+++ b/src/mongo/s/commands/cluster_remove_shard_from_zone_cmd.cpp
@@ -69,8 +69,8 @@ class RemoveShardFromZoneCmd : public BasicCommand {
public:
RemoveShardFromZoneCmd() : BasicCommand("removeShardFromZone", "removeshardfromzone") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_repl_set_get_status_cmd.cpp b/src/mongo/s/commands/cluster_repl_set_get_status_cmd.cpp
index 0c70fdac88c..913d7248d11 100644
--- a/src/mongo/s/commands/cluster_repl_set_get_status_cmd.cpp
+++ b/src/mongo/s/commands/cluster_repl_set_get_status_cmd.cpp
@@ -40,8 +40,8 @@ class CmdReplSetGetStatus : public ErrmsgCommandDeprecated {
public:
CmdReplSetGetStatus() : ErrmsgCommandDeprecated("replSetGetStatus") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_reset_error_cmd.cpp b/src/mongo/s/commands/cluster_reset_error_cmd.cpp
index 6df637aaf76..50ba801ba37 100644
--- a/src/mongo/s/commands/cluster_reset_error_cmd.cpp
+++ b/src/mongo/s/commands/cluster_reset_error_cmd.cpp
@@ -49,8 +49,8 @@ public:
return false;
}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual void addRequiredPrivileges(const std::string& dbname,
diff --git a/src/mongo/s/commands/cluster_set_feature_compatibility_version_cmd.cpp b/src/mongo/s/commands/cluster_set_feature_compatibility_version_cmd.cpp
index 2e519bc73f9..04502b0e214 100644
--- a/src/mongo/s/commands/cluster_set_feature_compatibility_version_cmd.cpp
+++ b/src/mongo/s/commands/cluster_set_feature_compatibility_version_cmd.cpp
@@ -55,8 +55,8 @@ class SetFeatureCompatibilityVersionCmd : public BasicCommand {
public:
SetFeatureCompatibilityVersionCmd() : BasicCommand("setFeatureCompatibilityVersion") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_shard_collection_cmd.cpp b/src/mongo/s/commands/cluster_shard_collection_cmd.cpp
index f9fc5442099..31d230f117f 100644
--- a/src/mongo/s/commands/cluster_shard_collection_cmd.cpp
+++ b/src/mongo/s/commands/cluster_shard_collection_cmd.cpp
@@ -70,8 +70,8 @@ class ShardCollectionCmd : public BasicCommand {
public:
ShardCollectionCmd() : BasicCommand("shardCollection", "shardcollection") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_split_cmd.cpp b/src/mongo/s/commands/cluster_split_cmd.cpp
index ec5fbe58d37..1b709cf9f95 100644
--- a/src/mongo/s/commands/cluster_split_cmd.cpp
+++ b/src/mongo/s/commands/cluster_split_cmd.cpp
@@ -88,8 +88,8 @@ class SplitCollectionCmd : public ErrmsgCommandDeprecated {
public:
SplitCollectionCmd() : ErrmsgCommandDeprecated("split") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ bool slaveOk() const override {
+ return true;
}
bool adminOnly() const override {
diff --git a/src/mongo/s/commands/cluster_update_zone_key_range_cmd.cpp b/src/mongo/s/commands/cluster_update_zone_key_range_cmd.cpp
index f286abc6a6b..0abb42b3a22 100644
--- a/src/mongo/s/commands/cluster_update_zone_key_range_cmd.cpp
+++ b/src/mongo/s/commands/cluster_update_zone_key_range_cmd.cpp
@@ -72,8 +72,8 @@ class UpdateZoneKeyRangeCmd : public BasicCommand {
public:
UpdateZoneKeyRangeCmd() : BasicCommand("updateZoneKeyRange", "updatezonekeyRange") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
diff --git a/src/mongo/s/commands/cluster_user_management_commands.cpp b/src/mongo/s/commands/cluster_user_management_commands.cpp
index f908b1e98e1..a9d6230b8cc 100644
--- a/src/mongo/s/commands/cluster_user_management_commands.cpp
+++ b/src/mongo/s/commands/cluster_user_management_commands.cpp
@@ -67,10 +67,11 @@ class CmdCreateUser : public BasicCommand {
public:
CmdCreateUser() : BasicCommand("createUser") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -107,10 +108,11 @@ class CmdUpdateUser : public BasicCommand {
public:
CmdUpdateUser() : BasicCommand("updateUser") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -158,8 +160,8 @@ class CmdDropUser : public BasicCommand {
public:
CmdDropUser() : BasicCommand("dropUser") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
@@ -206,10 +208,11 @@ class CmdDropAllUsersFromDatabase : public BasicCommand {
public:
CmdDropAllUsersFromDatabase() : BasicCommand("dropAllUsersFromDatabase") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -248,8 +251,8 @@ class CmdGrantRolesToUser : public BasicCommand {
public:
CmdGrantRolesToUser() : BasicCommand("grantRolesToUser") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
@@ -298,8 +301,8 @@ class CmdRevokeRolesFromUser : public BasicCommand {
public:
CmdRevokeRolesFromUser() : BasicCommand("revokeRolesFromUser") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
@@ -346,10 +349,15 @@ public:
class CmdUsersInfo : public BasicCommand {
public:
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kOptIn;
+ virtual bool slaveOk() const {
+ return false;
}
+ virtual bool slaveOverrideOk() const {
+ return true;
+ }
+
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return false;
}
@@ -380,10 +388,11 @@ class CmdCreateRole : public BasicCommand {
public:
CmdCreateRole() : BasicCommand("createRole") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -416,10 +425,11 @@ class CmdUpdateRole : public BasicCommand {
public:
CmdUpdateRole() : BasicCommand("updateRole") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -458,8 +468,8 @@ class CmdGrantPrivilegesToRole : public BasicCommand {
public:
CmdGrantPrivilegesToRole() : BasicCommand("grantPrivilegesToRole") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
@@ -501,10 +511,11 @@ class CmdRevokePrivilegesFromRole : public BasicCommand {
public:
CmdRevokePrivilegesFromRole() : BasicCommand("revokePrivilegesFromRole") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -543,10 +554,11 @@ class CmdGrantRolesToRole : public BasicCommand {
public:
CmdGrantRolesToRole() : BasicCommand("grantRolesToRole") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -585,10 +597,11 @@ class CmdRevokeRolesFromRole : public BasicCommand {
public:
CmdRevokeRolesFromRole() : BasicCommand("revokeRolesFromRole") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -627,10 +640,11 @@ class CmdDropRole : public BasicCommand {
public:
CmdDropRole() : BasicCommand("dropRole") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
@@ -672,8 +686,8 @@ class CmdDropAllRolesFromDatabase : public BasicCommand {
public:
CmdDropAllRolesFromDatabase() : BasicCommand("dropAllRolesFromDatabase") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
@@ -719,10 +733,15 @@ class CmdRolesInfo : public BasicCommand {
public:
CmdRolesInfo() : BasicCommand("rolesInfo") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kOptIn;
+ virtual bool slaveOk() const {
+ return false;
+ }
+
+ virtual bool slaveOverrideOk() const {
+ return true;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return false;
}
@@ -751,8 +770,8 @@ class CmdInvalidateUserCache : public BasicCommand {
public:
CmdInvalidateUserCache() : BasicCommand("invalidateUserCache") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
@@ -800,10 +819,11 @@ class CmdMergeAuthzCollections : public BasicCommand {
public:
CmdMergeAuthzCollections() : BasicCommand("_mergeAuthzCollections") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ virtual bool slaveOk() const {
+ return false;
}
+
virtual bool supportsWriteConcern(const BSONObj& cmd) const override {
return true;
}
diff --git a/src/mongo/s/commands/cluster_whats_my_uri_cmd.cpp b/src/mongo/s/commands/cluster_whats_my_uri_cmd.cpp
index 7cd621302ba..a44d6fbb8c1 100644
--- a/src/mongo/s/commands/cluster_whats_my_uri_cmd.cpp
+++ b/src/mongo/s/commands/cluster_whats_my_uri_cmd.cpp
@@ -38,8 +38,8 @@ class WhatsMyUriCmd : public BasicCommand {
public:
WhatsMyUriCmd() : BasicCommand("whatsmyuri") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
diff --git a/src/mongo/s/commands/cluster_write_cmd.cpp b/src/mongo/s/commands/cluster_write_cmd.cpp
index 779b3993c99..bf1949d73c8 100644
--- a/src/mongo/s/commands/cluster_write_cmd.cpp
+++ b/src/mongo/s/commands/cluster_write_cmd.cpp
@@ -139,8 +139,8 @@ class ClusterWriteCmd : public Command {
public:
virtual ~ClusterWriteCmd() {}
- AllowedOnSecondary secondaryAllowed() const final {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const final {
+ return false;
}
bool supportsWriteConcern(const BSONObj& cmd) const final {
diff --git a/src/mongo/s/commands/commands_public.cpp b/src/mongo/s/commands/commands_public.cpp
index c5e0ecb358d..4c153831450 100644
--- a/src/mongo/s/commands/commands_public.cpp
+++ b/src/mongo/s/commands/commands_public.cpp
@@ -151,8 +151,8 @@ class PublicGridCommand : public BasicCommand {
protected:
PublicGridCommand(const char* n, const char* oldname = NULL) : BasicCommand(n, oldname) {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kAlways;
+ virtual bool slaveOk() const {
+ return true;
}
virtual bool adminOnly() const {
@@ -247,8 +247,8 @@ class DropIndexesCmd : public ErrmsgCommandDeprecated {
public:
DropIndexesCmd() : ErrmsgCommandDeprecated("dropIndexes", "deleteIndexes") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const override {
+ return false;
}
bool adminOnly() const override {
@@ -291,8 +291,8 @@ class CreateIndexesCmd : public ErrmsgCommandDeprecated {
public:
CreateIndexesCmd() : ErrmsgCommandDeprecated("createIndexes") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const override {
+ return false;
}
bool adminOnly() const override {
@@ -340,8 +340,8 @@ class ReIndexCmd : public ErrmsgCommandDeprecated {
public:
ReIndexCmd() : ErrmsgCommandDeprecated("reIndex") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const override {
+ return false;
}
bool adminOnly() const override {
@@ -384,8 +384,8 @@ class CollectionModCmd : public ErrmsgCommandDeprecated {
public:
CollectionModCmd() : ErrmsgCommandDeprecated("collMod") {}
- AllowedOnSecondary secondaryAllowed() const override {
- return AllowedOnSecondary::kNever;
+ bool slaveOk() const override {
+ return false;
}
bool adminOnly() const override {