MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB-Balancer-Timeout mit verzögerter Replikation

Der Balancer wartet ordnungsgemäß darauf, dass die MEHRHEIT des Replikatsatzes des Ziel-Shards die zu migrierenden Dokumente enthält, bevor er das Löschen dieser Dokumente auf dem Quell-Shard einleitet.

Das Problem ist, dass Sie VIER Mitglieder in Ihrem Replikat-Set haben (Master, einen Slave, einen 24-Stunden-Slave-Delay-Slave und einen Arbiter). Das heißt, drei sind die Mehrheit. Ich bin mir nicht sicher, warum Sie einen Arbiter hinzugefügt haben, aber wenn Sie ihn entfernen, werden ZWEI die Mehrheit sein und der Balancer muss nicht auf den verspäteten Slave warten.

Die alternative Möglichkeit, dasselbe Ergebnis zu erzielen, besteht darin, den verzögerten Slave mit votes:0 einzurichten Eigenschaft und belassen Sie den Arbiter als dritten Abstimmungsknoten.