理由は不明ですが、次のバッチ インポートは誤りです。
Warehouse.collection.insert(chunk)
チャンクはハッシュの配列です。この操作を2回行います。1 回目は 1,000 の倉庫で、2 回目は 500 の倉庫で。1,000 のウェアハウスのみがデータベースに永続化されます。私もこれを検証することができましたmongostat
。
機能するのは、Mongoid に基づいて挿入することです。
warehouses = warehouses.map { |attributes| Warehouse.new(attributes) }
warehouses.each { |warehouse| listing.warehouses << warehouse }
これでいいのですが、一括インポートの問題点を知りたいです。
この問題を診断するにはどうすればよいですか? のみが、開いているmongodb.log
切断と閉じている切断を表示します。エラーログのようなものはありますか?
Warehouse.collection.insert(chunk, safe: true)
これも何の情報もありませんでした。