Skip to content

Commit 3503016

Browse files
committed
🎉 INT-527: use maxTimeMS for queries against prod servers to avoid excessive scans
1 parent 371bb1f commit 3503016

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,9 @@
7878
"mongodb-connection-model": "^3.0.6",
7979
"mongodb-instance-model": "^1.0.2",
8080
"mongodb-ns": "^1.0.0",
81+
"ms": "^0.7.1",
8182
"node-notifier": "^4.3.1",
82-
"scout-server": "http://bin.mongodb.org/js/scout-server/v0.4.5/scout-server-0.4.5.tar.gz"
83+
"scout-server": "http://bin.mongodb.org/js/scout-server/v0.4.6/scout-server-0.4.6.tar.gz"
8384
},
8485
"devDependencies": {
8586
"ampersand-app": "^1.0.4",

src/models/query-options.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
var ms = require('ms');
12
var Model = require('ampersand-model');
23
var EJSON = require('mongodb-extended-json');
34
var Query = require('mongodb-language-model').Query;
@@ -8,6 +9,7 @@ var DEFAULT_SORT = {
89
};
910
var DEFAULT_SIZE = 100;
1011
var DEFAULT_SKIP = 0;
12+
var DEFAULT_MAX_TIME_MS = ms('10 seconds');
1113

1214
var getDefaultQuery = function() {
1315
return new Query({}, {
@@ -39,6 +41,10 @@ module.exports = Model.extend({
3941
skip: {
4042
type: 'number',
4143
default: DEFAULT_SKIP
44+
},
45+
maxTimeMS: {
46+
type: 'number',
47+
default: DEFAULT_MAX_TIME_MS
4248
}
4349
},
4450
derived: {
@@ -60,7 +66,8 @@ module.exports = Model.extend({
6066
query: getDefaultQuery(),
6167
sort: DEFAULT_SORT,
6268
size: DEFAULT_SIZE,
63-
skip: DEFAULT_SKIP
69+
skip: DEFAULT_SKIP,
70+
maxTimeMS: DEFAULT_MAX_TIME_MS
6471
});
6572
this.trigger('reset', this);
6673
}

0 commit comments

Comments
 (0)