mongodb 설명서에 따라 stopOnError 옵션을 사용하면 mongoimport가 오류가 발생해도 작업을 계속 수행하지 않고 가져 오기 작업을 첫 번째 오류에서 중지합니다.mongodb - mongoimport stopOnError 옵션
이 옵션의 다양한 오류는 무엇입니까? 나는 다음과 같은 오류 조건을 테스트 한
는 :
는 mongod 인스턴스를 중지. mongodb와의 연결이 끊어 졌다는 오류 메시지가 나타납니다.
assertion: 10276 DBClientBase::findN: transport error: 127.0.0.1:15055 ns: admin.$cmd query: { getlasterror: 1 }
동일한 db 및 모음으로 동일한 파일을 다시 가져 왔습니다. 이렇게하면 중복 입력 오류가 발생합니다. 오류가 표시되지만 가져 오기가 중단되지는 않습니다.
Mon Jul 15 16:28:40.652 E11000 duplicate key error index: users.contacts_2.$_id_ dup key: { : "xexjiroiqcwujiuxrmedntmxhalniwygdyplrfvkjvfugdvxpadfvpferqtaquht" } Mon Jul 15 16:28:40.652 check 9 11 Mon Jul 15 16:28:40.652 E11000 duplicate key error index: users.contacts_2.$_id_ dup key: { : "uyioegyqcenijjickljgdpmvihvyefvyfenjkmcptqafalhmwrvbjkwrtutybpxg" } Mon Jul 15 16:28:40.652 imported 10 objects
지금, 난 혼란 스러워요. stopOnError는 네트워크 오류 또는 쓰기 오류에 대해서만 작동합니까? mongoimport를 사용하면서 우려를 표명하거나 getLastError 상태를 얻을 수있는 방법이 있습니까?
Sridhar에게 감사드립니다. stopOnError가 작동하는 여러 유형의 오류에 대한 아이디어가 있습니까? 난 그냥 대량 삽입 대신에 mongoimport를 사용한다면 getLastError만큼 명확한 쓰기 커밋을 얻을 수 있기를 바랍니다. – sonal
오, mongo 가져 오기 코드는 모든 삽입 후에 getLastError를 호출합니다. 고맙습니다. – sonal