0
0
mirror of https://github.com/mongodb/mongo.git synced 2024-12-01 01:21:03 +01:00
mongodb/jstests/core/find9.js

34 lines
894 B
JavaScript

// @tags: [requires_getmore]
// Test that the MaxBytesToReturnToClientAtOnce limit is enforced.
t = db.jstests_find9;
t.drop();
big = new Array(500000).toString();
for (i = 0; i < 60; ++i) {
t.save({a: i, b: big});
}
// Check size limit with a simple query.
assert.eq(60, t.find({}, {a: 1}).objsLeftInBatch()); // Projection resizes the result set.
assert.gt(60, t.find().objsLeftInBatch());
// Check size limit on a query with an explicit batch size.
assert.eq(60, t.find({}, {a: 1}).batchSize(80).objsLeftInBatch());
assert.gt(60, t.find().batchSize(80).objsLeftInBatch());
for (i = 0; i < 60; ++i) {
t.save({a: i, b: big});
}
// Check size limit with get more.
c = t.find().batchSize(80);
while (c.hasNext()) {
assert.gt(60, c.objsLeftInBatch());
c.next();
}
assert.eq(120, t.find().sort({$natural: 1}).itcount());
assert.eq(120, t.find().sort({_id: 1}).itcount());