Не знаком с драйвером, который вы здесь используете, но из вашего описания вы можете достичь того, что вы хотите, за один удар по базе данных, не нужно извлекать / зацикливать / обновлять ..
Оператор $ set будет вставлять или обновлять поле в зависимости от того, существует оно или нет.
db.Collection.update({}, { $set : { "myfield" : "x" } }, false, true)
Выше было бы установить поле «myfield» во всех документах в коллекции на «x», или, если оно уже существует, оно изменит значение на «x». Это то, чего вы хотите достичь?