MongoDB-PHP 에서 batchInsert 하다가 데이터 사이즈도 그리 안 큰데 아래와 같은 에러가 발생하는 경우가 있음.


current batch size is too large: 12957, max: 48000000


이건 데이터 사이즈가 너무 커서 못하는 경우가 아니라,

batchInsert 하려는 데이터 중 BSON 변환 실패(UTF-8이 아닌 데이터)한 데이터가 있는 경우에도 발생할 수 있다는 걸 확인했음.


그러므로 데이터 사이즈가 작은데 batchInsert시 저런 에러를 만난다면,

넣으려던 document 배열을 하나씩 다 뒤집어 까서 UTF-8이 아닌 데이터가 있는지 확인해 볼 것.


PHP라면 json_encode 했을 때 warning이 뜨면서 값이 NULL로 변한다면 그 놈이 범인.








Posted by bloodguy
,