Hi,
we are still doing some load test; we have a replica set with 3 nodes,
and the primary node got so much data that the two other nodes became
stale ( "replSet error RS102 too stale to catch up" ).
Looking at the mongo shell, the status still stays on "state
2" ( secondary according to this docu page:
http://www.mongodb.org/display/DOCS/Replica+Set+Commands ).
We restarted the third node, and it got status "3", as expected.
rs.status()
{
"set" : "testRS",
"date" : "Wed Oct 13 2010 13:44:41 GMT+0200 (CEST)",
"myState" : 1,
"members" : [
{
"_id" : 0,
"name" : "debian1:27017",
"health" : 1,
"state" : 1,
"self" : true
},
{
"_id" : 1,
"name" : "
10.10.40.112:27017",
"health" : 1,
"state" : 2,
"uptime" : 13516,
"lastHeartbeat" : "Wed Oct 13 2010 13:44:40 GMT
+0200 (CEST)",
"errmsg" : "error RS102 too stale to catch up"
},
{
"_id" : 2,
"name" : "
10.10.40.113:27017",
"health" : 1,
"state" : 3,
"uptime" : 5856,
"lastHeartbeat" : "Wed Oct 13 2010 13:44:40 GMT
+0200 (CEST)",
"errmsg" : "error RS102 too stale to catch up"
}
],
"ok" : 1
}
Maybe it is only checked on startup ?
Greets, Christoph