Docs Menu

Docs HomeDevelop ApplicationsMongoDB Manual

shardingState

On this page

  • Syntax
  • Behavior
shardingState

shardingState is an admin command that reports if mongod is a member of a sharded cluster. To run the command, you must run against the admin database. See db.adminCommand().

The command has the following syntax:

db.adminCommand(
{
shardingState: 1
}
)

For shardingState to detect that a mongod is a member of a sharded cluster, the mongod must satisfy the following conditions:

  1. the mongod is a primary member of a replica set, and

  2. the mongod instance is a member of a sharded cluster.

If shardingState detects that a mongod is a member of a sharded cluster, shardingState returns a document that resembles the following prototype:

{
"enabled" : true,
"configServer" : "<configdb-string>",
"shardName" : "<string>",
"shardHost" : "string:",
"versions" : {
"<database>.<collection>" : {
"placementVersion": Timestamp({ t: 1, i: 1024 }),
"timestamp": Timestamp({ t: 1682444810, i: 8 })
},
"<database>.<collection>" : {
"placementVersion": Timestamp({ t: 0, i: 0 }),
"timestamp": Timestamp({ t: 0, i: 0 })
}
},
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp({ t: 1682457265, i: 1 }),
"signature" : {
"hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="),
"keyId" : NumberLong("6488045157173166092")
}
},
"operationTime" : Timestamp({ t: 1682457260, i: 1 })
}

Otherwise, shardingState will return the following document:

{
"enabled" : false,
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp({t:1510716515, i: 1}),
"signature" : {
"hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="),
"keyId" : NumberLong("6488045157173166092")
}
},
"operationTime" : Timestamp({t: 1510716515, i: 1})
}

The response from shardingState when used with a config server is:

{
"enabled" : false,
"ok" : 1,
"operationTime" : Timestamp({t: 1510767613, i: 1}),
"$gleStats" : {
"lastOpTime" : Timestamp({t: 0, i: 0}),
"electionId" : ObjectId("7fffffff0000000000000001")
},
"$clusterTime" : {
"clusterTime" : Timestamp({t: 1510767613, i: 1}),
"signature" : {
"hash" : BinData(0,"IwBZ4SZjIMI5NdM62NObV/R31GM="),
"keyId" : NumberLong("6488693018630029321")
}
}
}

Note

mongos instances do not provide the shardingState.

Warning

This command obtains a write lock on the affected database and will block other operations until it has completed; however, the operation is typically short lived.

←  shardCollectionsplit →

On this page