-
Type:
Bug
-
Resolution: Done
-
Priority:
Major - P3
-
None
-
Affects Version/s: 2.0.27, 2.0.28
-
Component/s: None
-
Environment:node-v0.10.29
-
None
-
None
-
None
-
None
-
None
-
None
-
None
{{coll1.find({},
{raw:true}).toArray(err, items)}} returns an array of Buffer objects as expected
re-inserting the result set {{coll2.insert(items,
{raw:true})}} worked in 1.4, but
breaks in 2.0 with a driver error:
error parsing element 0 of field documents :: caused by :: wrong type for '0' field, expected object, found 0: BinData(0, 1D000000075F6964005543D9BCB4349345384A0BFD1061000100000000
insert, insertOne, insertMany, save and update all break the same way
to reproduce:
mongoClient = require('mongodb-2.0.28').MongoClient; rawMode = true; entity = {a:1}; dbName = "test"; collectionName = "mongo_test"; mongoClient.connect("mongodb://localhost:27017/test", {w:1}, function(err, db) { if (err) throw err; db.db(dbName).collection(collectionName).drop(function(err) { if (err) throw err; db.db(dbName).collection(collectionName).insert(entity, function(err) { if (err) throw err; db.db(dbName).collection(collectionName).find({}, {raw:rawMode}).toArray(function(err, found) { if (err) throw err; db.db(dbName).collection(collectionName).remove({}, function(err) { if (err) throw err; db.db(dbName).collection(collectionName).insert(found, {raw:rawMode, upsert:true}, function(err, inserted) { if (err) { console.log("re-insert error:", err.message, err.stack); } db.close(); }); }); }); }); }); });