Ich habe einen MongoDb-Produktionscluster mit 2.6.5, den ich kürzlich von zwei auf drei Shards migriert habe. Ich war ungefähr zwei Jahre lang als zwei Splitter gerannt. Jeder Shard ist ein 3-Server-Replikat und ich habe eine Sammlung erstellt.
Die sharded Sammlung ist ungefähr 240G, und mit dem neuen Shard habe ich nun gleichmäßig 2922 Stück auf jeden Shard verteilt. Meine Produktionsumgebung scheint gut zu funktionieren. Es gibt kein Problem beim Zugriff auf Daten.moveChunk konnte den TO-Shard bei der Datenübertragung nicht ansprechen: Ich kann keine neuen Chunks akzeptieren, da
[Anmerkung:. 1461 die Anzahl der Stücke von RS0 und shard1 bewegt werden soll 2922 auf shard2 machen]
war meine Absicht, drei weitere Sammlungen Scherbe, und so begann ich mit einer und erwartet, dass es über verbreiten die Scherben. Aber nein - ich endete mit diesem Wiederholungsfehler:
2014-10-29T20: 26: 35,374 + 0000 [Balancer] moveChunk Ergebnis: {cause: {ok: 0.0, errmsg: "kann neue Stücke nicht annehmen weil es immer noch 1461 Löschungen von der vorherigen Migration gibt "},
ok: 0.0, errmsg:" moveChunk konnte den TO-Shard bei der Datenübertragung nicht aktivieren: neue Chunks können nicht akzeptiert werden, da immer noch 1461 Löschungen aus der vorherigen Migration vorhanden sind "}
2014-10-29T20: 26: 35.375 + 0000 [Balancer] Balancer Verschiebung fehlgeschlagen: {Ursache: {ok: 0.0, errmsg:" kann keine neuen Chunks akzeptieren, da immer noch 1461 Delete von vorherigen sind Migration "},
ok: 0.0, errmsg: "moveChunk konnte TO-Shard bei der Datenübertragung nicht aktivieren: neue Chunks können nicht akzeptiert werden, da immer noch 1461 Löschungen aus der vorherigen Migration vorhanden sind"} from: rs0 to: shard1 chunk: min: {account_id: MinKey} max: {account_id: -9218254227106808901}
Mit ein wenig Recherche habe ich mir gedacht, ich sollte es einfach mal geben, da es offensichtlich nach dem Umzug aufräumen muss. Ich habe sh.disableBalancing ("Sammlungsname") ausgeführt, um die Fehler beim Versuch, die neue Sammlung zu sharden, zu stoppen. sh.getBalancerState zeigt true, , genauso wie sh.isBalancerRunning. Allerdings gab ich es 24 Stunden und die Fehlermeldung ist die gleiche. Ich würde denken, es würde mindestens 1 der 1461 gelöscht/gelöscht haben, die es löschen muss.
- Ist dieses gemeinsame Verhalten jetzt in 2.6 Welt? Muss ich jedes Mal, wenn ich die Umgebung mit einem anderen Shard anwachsen lasse, alle meine Sammlungen bearbeiten?
- Irgendeine Idee, wie man diese Aufräumarbeiten gehen kann? oder sollte ich einfach das primäre auf shard1 heruntertreten, was das Problem zu sein scheint?
- Wenn ich die primäre heruntersetze, habe ich noch Dateien auf der sekundären sowieso 'löschen/bereinigen'? Oder wird sich das um die Dinge kümmern, damit ich anfangen kann, neue Kollektionen zu sammeln?
Vielen Dank im Voraus für irgendwelche Einblicke.
Das ist nicht üblich, sei versichert. Ich muss in die Quellen graben, um herauszufinden, was los ist ... –
Ein Vorschlag ist, den gesamten Cluster neu zu starten. Siehe [SERVER-14047] (https://jira.mongodb.org/browse/SERVER-14047). –