I'm using mongoose to query for one document, and I'd like to pipe it to a stream. My database has multiple account documents. If I simply:
db.Accounts.findOne({}).exec(function(err, data){
...
});
it correctly returns a single document. However,
var mongooseStream = db.Accounts.findOne({}).stream({
transform: JSON.stringify
}),
writeStream = require('fs').createWriteStream('accounts');
mongooseStream.pipe(writeStream);
this newly created writeStream above has every account listed inside of it.
Lastly, if I .find({}).limit(1).stream()
, it will return only one document in the stream.
Any ideas on why streaming findOne({})
isn't working as I expect it to? Thanks!