У меня есть простой Node.js код, который пытается извлечь объект, заполнить поле, а затем обновить один и тот же объект:MongoError: попытка записать внешние буферные границы
var MongoClient = require('mongodb').MongoClient
, Db = require('mongodb').Db
, Server = require('mongodb').Server
, ObjectID = require('mongodb').ObjectID;
var db = new Db('testing', new Server('localhost', 27017));
db.open(function(err, db){
var Users = db.collection('users');
Users.find({code : {$exists : false} }, {email : 1}, function(err, users){
users.forEach(function(user){
var code = generateCode();
var userID = user._id;
Users.update({ _id : user._id }, {$set : {code : code } }, function(err, results){
if (err) console.log(err);
else console.log(results);
});
});
});
Когда я пытаюсь выполнить команду обновление mongo бросает:
MongoError: attempt to write outside buffer bounds.
Может кто-нибудь объяснить, что я делаю неправильно?
Что возвращает 'generateCode()'? – JohnnyHK
строка - 512 символов. –
Можете ли вы обновить свой вопрос, чтобы включить пример кода, вызывающего ошибку? – JohnnyHK