あるデータベースからデータをエクスポートし、別のデータベースにデータをインポートしています。mongo 2.6 を搭載したマシンでデータをエクスポートすると、mongo 2.4 を使用して VM でデータをインポートします。両方の mongod インスタンスが 2.4 を実行しています。
このエラーが発生し続けます:
Wed Jun 4 13:13:32.604 check 0 0
Wed Jun 4 13:13:32.604 imported 0 objects
Wed Jun 4 13:13:32.604 ERROR: encountered 1 error(s)
failed: [192.168.140.30] => (item=collection) => {"changed": true, "cmd": "mongoimport -u username -p password -d db -c collection --drop --jsonArray /tmp/collection.json ", "delta": "0:00:00.026383", "end": "2014-06-04 13:13:33.091774", "item": "collection", "rc": 255, "start": "2014-06-04 13:13:33.065391"}
stdout: connected to: 127.0.0.1
Wed Jun 4 13:13:33.089 dropping: <db.collection>
Wed Jun 4 13:13:33.089 exception:BSON representation of supplied JSON array is too large: code FailedToParse: FailedToParse: Date expecting integer milliseconds: offset:171
エクスポートされた日付形式は次のようになります
{ "date" : { "$date" : "2014-06-02T06:39:28.869-0700" }
mongoexport と同じマシンで mongoimport を使用すると問題なく動作することを確認したので、2.4 から 2.6 への mongoimport/export の間に互換性の問題があると思います。ファイアウォールの制限により、データを移動するために 2 つの異なるマシンを使用する必要があります。
この問題の回避策はありますか。私が知る限り、古い形式でエクスポートするオプションは見たことがありません。リリース ノートからも、互換性エラーの原因がわかりません。