Игнорирование ошибок в updateMany () как упорядочено: false - PullRequest
0 голосов
/ 04 июня 2018

У меня около 500k записей в моем MongoDB, и я должен обновить каждый документ одним флагом

Мой запрос выглядит так:

db.table.updateMany(
  {}, 
  {
      $set: {
        my_custom_flag: 1
      }
   }
);

Но есть несколько документов, которыеболее 16 МБ, и я не могу обновить эти документы из-за ограничения MongoDB 16 МБ.

Приведенный выше запрос выдает ошибку и прерывает всю операцию, т. е. я не могу обновить остальные документы.

Можно ли как-то подавить ошибки и продолжить работу?или я получаю документ _id документов размером более 16 МБ?

{
   "message": "Resulting document after update is larger than 16777216",
   "name": "WriteError",
   "code": 17419,
   "index": 0,
   "errmsg": "Resulting document after update is larger than 16777216"
}

РЕДАКТИРОВАТЬ: bulkWrite() при использовании с ordered: false по-прежнему выдает ту же ошибку, где другие документыне обновляется.Я не понимаю, почему этот вопрос помечен как дубликат.

PS: я не хочу использовать GridFS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...