web-dev-qa-db-ja.com

.turtleの名前を変更しようとするとWiredTigerがパニックになり、すべてのデータが失われます

これは今週2回、別々のサーバー(1つのステージングと1つの本番)で見られました。

2017-10-19T12:50:37.525-0400 I ACCESS   [conn266] Successfully authenticated as principal ********* on admin
2017-10-19T13:00:42.782-0400 E STORAGE  [thread2] WiredTiger (-28817) [1508432442:782769][1520:8790690042448], file:WiredTiger.wt, WT_SESSION.checkpoint: c:\mongo\data\WiredTiger.turtle.set to c:\mongo\data\WiredTiger.turtle: file-rename: rename: Cannot create a file when that file already exists.
2017-10-19T13:00:42.784-0400 E STORAGE  [thread2] WiredTiger (-28817) [1508432442:784770][1520:8790690042448], checkpoint-server: checkpoint server error: Cannot create a file when that file already exists.
2017-10-19T13:00:42.785-0400 E STORAGE  [thread2] WiredTiger (-31804) [1508432442:785770][1520:8790690042448], checkpoint-server: the process must exit and restart: WT_PANIC: WiredTiger library panic
2017-10-19T13:00:42.785-0400 I -        [thread2] Fatal Assertion 28558
2017-10-19T13:00:42.785-0400 I -        [thread2] 

***aborting after fassert() failure

2017-10-19T13:00:42.805-0400 I -        [conn259] Fatal Assertion 28559
2017-10-19T13:00:42.806-0400 I -        [conn259] 

***aborting after fassert() failure

その結果、adminデータベースが消去されます。回復するには、認証を無効にして、すべてのユーザーを再作成する必要があります。元のデータファイルにはデータが含まれているようですが、シェルコマンドからは表示されなくなりました。

両方のサーバーは、数か月間、独立して正常に動作しています。彼らは同じバージョンのMongoを実行していますが、それと相互作用するソフトウェアのバージョンは大きく異なります。

私は2つの質問があると思います:

1)この特定の失敗の原因は何ですか?
c:\mongo\data\WiredTiger.turtleこの時点では明らかに存在すべきではありませんが、存在します。何がこれを引き起こす可能性がありますか?それらは、Bit9やアンチウイルスソリューションを含む広範なセキュリティプロトコルを備えています。スケジュールされたデフラグジョブを提案しましたが(SSDを実行しているため、デフラグは実行されないはずですが、ちょっと...)、どちらのサーバーでもデフラグが発生したという証拠は見つかりません。

2)1日か2日おきに同じクラッシュが発生する原因は何ですか?
2つのシステムに共通するのはMongoだけです。余談ですが、ジャーナリングとレプリケーションを提案します(それらの実稼働環境はまだテストロールアウト中であるため、今回はダウンタイムとデータの損失は許容範囲内でした)。

1
adamdc78

使用しているバージョンは何ですか?これは 既知のバグ 、バージョン3.2.13、3.4.4、3.5.6以降で修正されたものです。

1
JJussi