MongoDBのレプリカセットにmongorestoreのような大量のデータを流し込むとたまに出るのでメモ
エラーメッセージ
2015-07-23T21:50:20.688+0900 I REPL [rsBackgroundSync] replSet error RS102 too stale to catch up
原因
- レプリカセットの同期元が同期先のoplogから更新情報を取得する際に、取得する更新情報が取得する前に同期先で削除されてしまい、更新情報が取得できなくなるのが原因
復旧方法
- RS102が発生しているmongodを停止
- dbpath配下のディレクトリ・ファイルをすべて削除
- mongodを起動すると自動的にsyncを開始する
再発防止策
- oplogサイズを増やす