mongodb 4.5.0 → 4.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/admin.js +5 -5
- package/lib/admin.js.map +1 -1
- package/lib/bulk/common.js +7 -4
- package/lib/bulk/common.js.map +1 -1
- package/lib/change_stream.js +264 -258
- package/lib/change_stream.js.map +1 -1
- package/lib/cmap/auth/mongodb_aws.js +3 -0
- package/lib/cmap/auth/mongodb_aws.js.map +1 -1
- package/lib/cmap/auth/scram.js +12 -1
- package/lib/cmap/auth/scram.js.map +1 -1
- package/lib/cmap/commands.js +12 -11
- package/lib/cmap/commands.js.map +1 -1
- package/lib/cmap/connect.js +8 -1
- package/lib/cmap/connect.js.map +1 -1
- package/lib/cmap/connection.js +9 -60
- package/lib/cmap/connection.js.map +1 -1
- package/lib/cmap/connection_pool.js +70 -57
- package/lib/cmap/connection_pool.js.map +1 -1
- package/lib/cmap/connection_pool_events.js.map +1 -1
- package/lib/cmap/message_stream.js +39 -6
- package/lib/cmap/message_stream.js.map +1 -1
- package/lib/cmap/wire_protocol/compression.js +18 -2
- package/lib/cmap/wire_protocol/compression.js.map +1 -1
- package/lib/cmap/wire_protocol/constants.js +2 -2
- package/lib/cmap/wire_protocol/shared.js +3 -0
- package/lib/cmap/wire_protocol/shared.js.map +1 -1
- package/lib/collection.js +62 -31
- package/lib/collection.js.map +1 -1
- package/lib/connection_string.js +39 -11
- package/lib/connection_string.js.map +1 -1
- package/lib/constants.js +8 -1
- package/lib/constants.js.map +1 -1
- package/lib/cursor/abstract_cursor.js +16 -11
- package/lib/cursor/abstract_cursor.js.map +1 -1
- package/lib/cursor/aggregation_cursor.js +5 -5
- package/lib/cursor/aggregation_cursor.js.map +1 -1
- package/lib/cursor/find_cursor.js +12 -7
- package/lib/cursor/find_cursor.js.map +1 -1
- package/lib/db.js +21 -14
- package/lib/db.js.map +1 -1
- package/lib/deps.js +6 -1
- package/lib/deps.js.map +1 -1
- package/lib/encrypter.js +13 -3
- package/lib/encrypter.js.map +1 -1
- package/lib/error.js +37 -24
- package/lib/error.js.map +1 -1
- package/lib/gridfs/upload.js +1 -1
- package/lib/gridfs/upload.js.map +1 -1
- package/lib/index.js +4 -3
- package/lib/index.js.map +1 -1
- package/lib/mongo_client.js +18 -0
- package/lib/mongo_client.js.map +1 -1
- package/lib/operations/command.js +0 -3
- package/lib/operations/command.js.map +1 -1
- package/lib/operations/connect.js +1 -0
- package/lib/operations/connect.js.map +1 -1
- package/lib/operations/create_collection.js +56 -17
- package/lib/operations/create_collection.js.map +1 -1
- package/lib/operations/drop.js +48 -7
- package/lib/operations/drop.js.map +1 -1
- package/lib/operations/estimated_document_count.js +1 -20
- package/lib/operations/estimated_document_count.js.map +1 -1
- package/lib/operations/execute_operation.js +16 -9
- package/lib/operations/execute_operation.js.map +1 -1
- package/lib/operations/find.js +0 -51
- package/lib/operations/find.js.map +1 -1
- package/lib/operations/indexes.js +2 -2
- package/lib/operations/indexes.js.map +1 -1
- package/lib/operations/insert.js +5 -1
- package/lib/operations/insert.js.map +1 -1
- package/lib/operations/list_collections.js +2 -2
- package/lib/operations/list_collections.js.map +1 -1
- package/lib/sdam/monitor.js +10 -3
- package/lib/sdam/monitor.js.map +1 -1
- package/lib/sdam/server.js +29 -21
- package/lib/sdam/server.js.map +1 -1
- package/lib/sdam/srv_polling.js +2 -1
- package/lib/sdam/srv_polling.js.map +1 -1
- package/lib/sdam/topology.js +25 -24
- package/lib/sdam/topology.js.map +1 -1
- package/lib/sdam/topology_description.js +2 -1
- package/lib/sdam/topology_description.js.map +1 -1
- package/lib/sessions.js +29 -17
- package/lib/sessions.js.map +1 -1
- package/lib/utils.js +3 -2
- package/lib/utils.js.map +1 -1
- package/mongodb.d.ts +521 -88
- package/package.json +12 -11
- package/src/admin.ts +9 -5
- package/src/bulk/common.ts +7 -4
- package/src/change_stream.ts +761 -440
- package/src/cmap/auth/mongodb_aws.ts +5 -0
- package/src/cmap/auth/scram.ts +11 -1
- package/src/cmap/commands.ts +23 -22
- package/src/cmap/connect.ts +13 -2
- package/src/cmap/connection.ts +12 -74
- package/src/cmap/connection_pool.ts +90 -74
- package/src/cmap/connection_pool_events.ts +1 -1
- package/src/cmap/message_stream.ts +41 -7
- package/src/cmap/wire_protocol/compression.ts +27 -3
- package/src/cmap/wire_protocol/constants.ts +2 -2
- package/src/cmap/wire_protocol/shared.ts +5 -1
- package/src/collection.ts +74 -36
- package/src/connection_string.ts +49 -14
- package/src/constants.ts +6 -0
- package/src/cursor/abstract_cursor.ts +18 -15
- package/src/cursor/aggregation_cursor.ts +6 -6
- package/src/cursor/find_cursor.ts +16 -8
- package/src/db.ts +31 -20
- package/src/deps.ts +65 -7
- package/src/encrypter.ts +12 -3
- package/src/error.ts +41 -27
- package/src/gridfs/upload.ts +1 -1
- package/src/index.ts +23 -0
- package/src/mongo_client.ts +36 -11
- package/src/mongo_types.ts +1 -1
- package/src/operations/command.ts +0 -4
- package/src/operations/connect.ts +1 -0
- package/src/operations/create_collection.ts +95 -21
- package/src/operations/drop.ts +66 -6
- package/src/operations/estimated_document_count.ts +2 -29
- package/src/operations/execute_operation.ts +27 -27
- package/src/operations/find.ts +0 -80
- package/src/operations/indexes.ts +3 -9
- package/src/operations/insert.ts +8 -1
- package/src/operations/list_collections.ts +3 -3
- package/src/sdam/monitor.ts +10 -0
- package/src/sdam/server.ts +39 -36
- package/src/sdam/srv_polling.ts +1 -0
- package/src/sdam/topology.ts +36 -27
- package/src/sdam/topology_description.ts +2 -1
- package/src/sessions.ts +31 -20
- package/src/transactions.ts +1 -1
- package/src/utils.ts +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/cmap/connection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/cmap/connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConnectionPool = void 0;
|
|
4
4
|
const Denque = require("denque");
|
|
5
|
+
const timers_1 = require("timers");
|
|
5
6
|
const constants_1 = require("../constants");
|
|
6
7
|
const error_1 = require("../error");
|
|
7
8
|
const logger_1 = require("../logger");
|
|
@@ -17,7 +18,9 @@ const kLogger = Symbol('logger');
|
|
|
17
18
|
/** @internal */
|
|
18
19
|
const kConnections = Symbol('connections');
|
|
19
20
|
/** @internal */
|
|
20
|
-
const
|
|
21
|
+
const kPending = Symbol('pending');
|
|
22
|
+
/** @internal */
|
|
23
|
+
const kCheckedOut = Symbol('checkedOut');
|
|
21
24
|
/** @internal */
|
|
22
25
|
const kMinPoolSizeTimer = Symbol('minPoolSizeTimer');
|
|
23
26
|
/** @internal */
|
|
@@ -35,8 +38,6 @@ const kCancelled = Symbol('cancelled');
|
|
|
35
38
|
/** @internal */
|
|
36
39
|
const kMetrics = Symbol('metrics');
|
|
37
40
|
/** @internal */
|
|
38
|
-
const kCheckedOut = Symbol('checkedOut');
|
|
39
|
-
/** @internal */
|
|
40
41
|
const kProcessingWaitQueue = Symbol('processingWaitQueue');
|
|
41
42
|
/**
|
|
42
43
|
* A pool of connections which dynamically resizes, and emit events related to pool activity
|
|
@@ -45,7 +46,7 @@ const kProcessingWaitQueue = Symbol('processingWaitQueue');
|
|
|
45
46
|
class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
46
47
|
/** @internal */
|
|
47
48
|
constructor(options) {
|
|
48
|
-
var _a, _b, _c, _d;
|
|
49
|
+
var _a, _b, _c, _d, _e;
|
|
49
50
|
super();
|
|
50
51
|
this.closed = false;
|
|
51
52
|
this.options = Object.freeze({
|
|
@@ -53,8 +54,9 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
53
54
|
connectionType: connection_1.Connection,
|
|
54
55
|
maxPoolSize: (_a = options.maxPoolSize) !== null && _a !== void 0 ? _a : 100,
|
|
55
56
|
minPoolSize: (_b = options.minPoolSize) !== null && _b !== void 0 ? _b : 0,
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
maxConnecting: (_c = options.maxConnecting) !== null && _c !== void 0 ? _c : 2,
|
|
58
|
+
maxIdleTimeMS: (_d = options.maxIdleTimeMS) !== null && _d !== void 0 ? _d : 0,
|
|
59
|
+
waitQueueTimeoutMS: (_e = options.waitQueueTimeoutMS) !== null && _e !== void 0 ? _e : 0,
|
|
58
60
|
autoEncrypter: options.autoEncrypter,
|
|
59
61
|
metadata: options.metadata
|
|
60
62
|
});
|
|
@@ -63,7 +65,8 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
63
65
|
}
|
|
64
66
|
this[kLogger] = new logger_1.Logger('ConnectionPool');
|
|
65
67
|
this[kConnections] = new Denque();
|
|
66
|
-
this[
|
|
68
|
+
this[kPending] = 0;
|
|
69
|
+
this[kCheckedOut] = 0;
|
|
67
70
|
this[kMinPoolSizeTimer] = undefined;
|
|
68
71
|
this[kGeneration] = 0;
|
|
69
72
|
this[kServiceGenerations] = new Map();
|
|
@@ -72,7 +75,6 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
72
75
|
this[kCancellationToken].setMaxListeners(Infinity);
|
|
73
76
|
this[kWaitQueue] = new Denque();
|
|
74
77
|
this[kMetrics] = new metrics_1.ConnectionPoolMetrics();
|
|
75
|
-
this[kCheckedOut] = 0;
|
|
76
78
|
this[kProcessingWaitQueue] = false;
|
|
77
79
|
process.nextTick(() => {
|
|
78
80
|
this.emit(ConnectionPool.CONNECTION_POOL_CREATED, new connection_pool_events_1.ConnectionPoolCreatedEvent(this));
|
|
@@ -87,14 +89,20 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
87
89
|
get generation() {
|
|
88
90
|
return this[kGeneration];
|
|
89
91
|
}
|
|
90
|
-
/** An integer expressing how many total connections (
|
|
92
|
+
/** An integer expressing how many total connections (available + pending + in use) the pool currently has */
|
|
91
93
|
get totalConnectionCount() {
|
|
92
|
-
return this
|
|
94
|
+
return (this.availableConnectionCount + this.pendingConnectionCount + this.currentCheckedOutCount);
|
|
93
95
|
}
|
|
94
96
|
/** An integer expressing how many connections are currently available in the pool. */
|
|
95
97
|
get availableConnectionCount() {
|
|
96
98
|
return this[kConnections].length;
|
|
97
99
|
}
|
|
100
|
+
get pendingConnectionCount() {
|
|
101
|
+
return this[kPending];
|
|
102
|
+
}
|
|
103
|
+
get currentCheckedOutCount() {
|
|
104
|
+
return this[kCheckedOut];
|
|
105
|
+
}
|
|
98
106
|
get waitQueueSize() {
|
|
99
107
|
return this[kWaitQueue].length;
|
|
100
108
|
}
|
|
@@ -104,9 +112,6 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
104
112
|
get serviceGenerations() {
|
|
105
113
|
return this[kServiceGenerations];
|
|
106
114
|
}
|
|
107
|
-
get currentCheckedOutCount() {
|
|
108
|
-
return this[kCheckedOut];
|
|
109
|
-
}
|
|
110
115
|
/**
|
|
111
116
|
* Get the metrics information for the pool when a wait queue timeout occurs.
|
|
112
117
|
*/
|
|
@@ -128,7 +133,7 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
128
133
|
const waitQueueMember = { callback };
|
|
129
134
|
const waitQueueTimeoutMS = this.options.waitQueueTimeoutMS;
|
|
130
135
|
if (waitQueueTimeoutMS) {
|
|
131
|
-
waitQueueMember.timer = setTimeout(() => {
|
|
136
|
+
waitQueueMember.timer = (0, timers_1.setTimeout)(() => {
|
|
132
137
|
waitQueueMember[kCancelled] = true;
|
|
133
138
|
waitQueueMember.timer = undefined;
|
|
134
139
|
this.emit(ConnectionPool.CONNECTION_CHECK_OUT_FAILED, new connection_pool_events_1.ConnectionCheckOutFailedEvent(this, 'timeout'));
|
|
@@ -137,7 +142,6 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
137
142
|
: 'Timed out while checking out a connection from connection pool', this.address));
|
|
138
143
|
}, waitQueueTimeoutMS);
|
|
139
144
|
}
|
|
140
|
-
this[kCheckedOut] = this[kCheckedOut] + 1;
|
|
141
145
|
this[kWaitQueue].push(waitQueueMember);
|
|
142
146
|
process.nextTick(processWaitQueue, this);
|
|
143
147
|
}
|
|
@@ -154,7 +158,7 @@ class ConnectionPool extends mongo_types_1.TypedEventEmitter {
|
|
|
154
158
|
connection.markAvailable();
|
|
155
159
|
this[kConnections].unshift(connection);
|
|
156
160
|
}
|
|
157
|
-
this[kCheckedOut]
|
|
161
|
+
this[kCheckedOut]--;
|
|
158
162
|
this.emit(ConnectionPool.CONNECTION_CHECKED_IN, new connection_pool_events_1.ConnectionCheckedInEvent(this, connection));
|
|
159
163
|
if (willDestroy) {
|
|
160
164
|
const reason = connection.closed ? 'error' : poolClosed ? 'poolClosed' : 'stale';
|
|
@@ -332,14 +336,27 @@ ConnectionPool.CONNECTION_CHECKED_OUT = constants_1.CONNECTION_CHECKED_OUT;
|
|
|
332
336
|
*/
|
|
333
337
|
ConnectionPool.CONNECTION_CHECKED_IN = constants_1.CONNECTION_CHECKED_IN;
|
|
334
338
|
function ensureMinPoolSize(pool) {
|
|
335
|
-
|
|
339
|
+
const minPoolSize = pool.options.minPoolSize;
|
|
340
|
+
if (pool.closed || minPoolSize === 0) {
|
|
336
341
|
return;
|
|
337
342
|
}
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
343
|
+
if (pool.totalConnectionCount < minPoolSize &&
|
|
344
|
+
pool.pendingConnectionCount < pool.options.maxConnecting) {
|
|
345
|
+
// NOTE: ensureMinPoolSize should not try to get all the pending
|
|
346
|
+
// connection permits because that potentially delays the availability of
|
|
347
|
+
// the connection to a checkout request
|
|
348
|
+
createConnection(pool, (err, connection) => {
|
|
349
|
+
pool[kPending]--;
|
|
350
|
+
if (!err && connection) {
|
|
351
|
+
pool[kConnections].push(connection);
|
|
352
|
+
process.nextTick(processWaitQueue, pool);
|
|
353
|
+
}
|
|
354
|
+
pool[kMinPoolSizeTimer] = (0, timers_1.setTimeout)(() => ensureMinPoolSize(pool), 10);
|
|
355
|
+
});
|
|
356
|
+
}
|
|
357
|
+
else {
|
|
358
|
+
pool[kMinPoolSizeTimer] = (0, timers_1.setTimeout)(() => ensureMinPoolSize(pool), 100);
|
|
341
359
|
}
|
|
342
|
-
pool[kMinPoolSizeTimer] = setTimeout(() => ensureMinPoolSize(pool), 10);
|
|
343
360
|
}
|
|
344
361
|
function connectionIsStale(pool, connection) {
|
|
345
362
|
const serviceId = connection.serviceId;
|
|
@@ -360,18 +377,18 @@ function createConnection(pool, callback) {
|
|
|
360
377
|
generation: pool[kGeneration],
|
|
361
378
|
cancellationToken: pool[kCancellationToken]
|
|
362
379
|
};
|
|
363
|
-
pool[
|
|
380
|
+
pool[kPending]++;
|
|
381
|
+
// This is our version of a "virtual" no-I/O connection as the spec requires
|
|
382
|
+
pool.emit(ConnectionPool.CONNECTION_CREATED, new connection_pool_events_1.ConnectionCreatedEvent(pool, { id: connectOptions.id }));
|
|
364
383
|
(0, connect_1.connect)(connectOptions, (err, connection) => {
|
|
365
384
|
if (err || !connection) {
|
|
366
|
-
pool[kPermits]++;
|
|
367
385
|
pool[kLogger].debug(`connection attempt failed with error [${JSON.stringify(err)}]`);
|
|
368
|
-
|
|
369
|
-
callback(err);
|
|
370
|
-
}
|
|
386
|
+
callback(err);
|
|
371
387
|
return;
|
|
372
388
|
}
|
|
373
389
|
// The pool might have closed since we started trying to create a connection
|
|
374
390
|
if (pool.closed) {
|
|
391
|
+
pool[kPending]--;
|
|
375
392
|
connection.destroy({ force: true });
|
|
376
393
|
return;
|
|
377
394
|
}
|
|
@@ -379,7 +396,6 @@ function createConnection(pool, callback) {
|
|
|
379
396
|
for (const event of [...constants_1.APM_EVENTS, connection_1.Connection.CLUSTER_TIME_RECEIVED]) {
|
|
380
397
|
connection.on(event, (e) => pool.emit(event, e));
|
|
381
398
|
}
|
|
382
|
-
pool.emit(ConnectionPool.CONNECTION_CREATED, new connection_pool_events_1.ConnectionCreatedEvent(pool, connection));
|
|
383
399
|
if (pool.loadBalanced) {
|
|
384
400
|
connection.on(connection_1.Connection.PINNED, pinType => pool[kMetrics].markPinned(pinType));
|
|
385
401
|
connection.on(connection_1.Connection.UNPINNED, pinType => pool[kMetrics].markUnpinned(pinType));
|
|
@@ -398,20 +414,12 @@ function createConnection(pool, callback) {
|
|
|
398
414
|
}
|
|
399
415
|
connection.markAvailable();
|
|
400
416
|
pool.emit(ConnectionPool.CONNECTION_READY, new connection_pool_events_1.ConnectionReadyEvent(pool, connection));
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
callback(undefined, connection);
|
|
404
|
-
return;
|
|
405
|
-
}
|
|
406
|
-
// otherwise add it to the pool for later acquisition, and try to process the wait queue
|
|
407
|
-
pool[kConnections].push(connection);
|
|
408
|
-
process.nextTick(processWaitQueue, pool);
|
|
417
|
+
callback(undefined, connection);
|
|
418
|
+
return;
|
|
409
419
|
});
|
|
410
420
|
}
|
|
411
421
|
function destroyConnection(pool, connection, reason) {
|
|
412
422
|
pool.emit(ConnectionPool.CONNECTION_CLOSED, new connection_pool_events_1.ConnectionClosedEvent(pool, connection, reason));
|
|
413
|
-
// allow more connections to be created
|
|
414
|
-
pool[kPermits]++;
|
|
415
423
|
// destroy the connection
|
|
416
424
|
process.nextTick(() => connection.destroy());
|
|
417
425
|
}
|
|
@@ -440,6 +448,7 @@ function processWaitQueue(pool) {
|
|
|
440
448
|
const isStale = connectionIsStale(pool, connection);
|
|
441
449
|
const isIdle = connectionIsIdle(pool, connection);
|
|
442
450
|
if (!isStale && !isIdle && !connection.closed) {
|
|
451
|
+
pool[kCheckedOut]++;
|
|
443
452
|
pool.emit(ConnectionPool.CONNECTION_CHECKED_OUT, new connection_pool_events_1.ConnectionCheckedOutEvent(pool, connection));
|
|
444
453
|
if (waitQueueMember.timer) {
|
|
445
454
|
clearTimeout(waitQueueMember.timer);
|
|
@@ -452,33 +461,37 @@ function processWaitQueue(pool) {
|
|
|
452
461
|
destroyConnection(pool, connection, reason);
|
|
453
462
|
}
|
|
454
463
|
}
|
|
455
|
-
const maxPoolSize = pool.options
|
|
456
|
-
|
|
464
|
+
const { maxPoolSize, maxConnecting } = pool.options;
|
|
465
|
+
while (pool.waitQueueSize > 0 &&
|
|
466
|
+
pool.pendingConnectionCount < maxConnecting &&
|
|
467
|
+
(maxPoolSize === 0 || pool.totalConnectionCount < maxPoolSize)) {
|
|
468
|
+
const waitQueueMember = pool[kWaitQueue].shift();
|
|
469
|
+
if (!waitQueueMember || waitQueueMember[kCancelled]) {
|
|
470
|
+
continue;
|
|
471
|
+
}
|
|
457
472
|
createConnection(pool, (err, connection) => {
|
|
458
|
-
|
|
459
|
-
if (
|
|
473
|
+
pool[kPending]--;
|
|
474
|
+
if (waitQueueMember[kCancelled]) {
|
|
460
475
|
if (!err && connection) {
|
|
461
476
|
pool[kConnections].push(connection);
|
|
462
477
|
}
|
|
463
|
-
pool[kProcessingWaitQueue] = false;
|
|
464
|
-
return;
|
|
465
|
-
}
|
|
466
|
-
if (err) {
|
|
467
|
-
pool.emit(ConnectionPool.CONNECTION_CHECK_OUT_FAILED, new connection_pool_events_1.ConnectionCheckOutFailedEvent(pool, err));
|
|
468
478
|
}
|
|
469
|
-
else
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
479
|
+
else {
|
|
480
|
+
if (err) {
|
|
481
|
+
pool.emit(ConnectionPool.CONNECTION_CHECK_OUT_FAILED, new connection_pool_events_1.ConnectionCheckOutFailedEvent(pool, err));
|
|
482
|
+
}
|
|
483
|
+
else if (connection) {
|
|
484
|
+
pool[kCheckedOut]++;
|
|
485
|
+
pool.emit(ConnectionPool.CONNECTION_CHECKED_OUT, new connection_pool_events_1.ConnectionCheckedOutEvent(pool, connection));
|
|
486
|
+
}
|
|
487
|
+
if (waitQueueMember.timer) {
|
|
488
|
+
clearTimeout(waitQueueMember.timer);
|
|
489
|
+
}
|
|
490
|
+
waitQueueMember.callback(err, connection);
|
|
474
491
|
}
|
|
475
|
-
|
|
476
|
-
pool[kProcessingWaitQueue] = false;
|
|
477
|
-
process.nextTick(() => processWaitQueue(pool));
|
|
492
|
+
process.nextTick(processWaitQueue, pool);
|
|
478
493
|
});
|
|
479
494
|
}
|
|
480
|
-
|
|
481
|
-
pool[kProcessingWaitQueue] = false;
|
|
482
|
-
}
|
|
495
|
+
pool[kProcessingWaitQueue] = false;
|
|
483
496
|
}
|
|
484
497
|
//# sourceMappingURL=connection_pool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection_pool.js","sourceRoot":"","sources":["../../src/cmap/connection_pool.ts"],"names":[],"mappings":";;;AAAA,iCAAkC;AAElC,4CAYsB;AACtB,oCAAoF;AACpF,sCAAmC;AACnC,gDAAsE;AACtE,oCAA4D;AAC5D,uCAAoC;AACpC,6CAA+E;AAC/E,qEAWkC;AAClC,qCAAkE;AAClE,uCAAkD;AAElD,gBAAgB;AAChB,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AACjC,gBAAgB;AAChB,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AAC3C,gBAAgB;AAChB,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AACnC,gBAAgB;AAChB,MAAM,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACrD,gBAAgB;AAChB,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AACzC,gBAAgB;AAChB,MAAM,mBAAmB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AACzD,gBAAgB;AAChB,MAAM,kBAAkB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AACvD,gBAAgB;AAChB,MAAM,kBAAkB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AACvD,gBAAgB;AAChB,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AACvC,gBAAgB;AAChB,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AACvC,gBAAgB;AAChB,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AACnC,gBAAgB;AAChB,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AACzC,gBAAgB;AAChB,MAAM,oBAAoB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AA0C3D;;;GAGG;AACH,MAAa,cAAe,SAAQ,+BAAuC;IAuFzE,gBAAgB;IAChB,YAAY,OAA8B;;QACxC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;YAC3B,GAAG,OAAO;YACV,cAAc,EAAE,uBAAU;YAC1B,WAAW,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,GAAG;YACvC,WAAW,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,CAAC;YACrC,aAAa,EAAE,MAAA,OAAO,CAAC,aAAa,mCAAI,CAAC;YACzC,kBAAkB,EAAE,MAAA,OAAO,CAAC,kBAAkB,mCAAI,CAAC;YACnD,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YACvD,MAAM,IAAI,iCAAyB,CACjC,yEAAyE,CAC1E,CAAC;SACH;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,eAAM,CAAC,gBAAgB,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,MAAM,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAC;QACpC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,mBAAmB,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAA,mBAAW,EAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,+BAAiB,EAAE,CAAC;QACnD,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,+BAAqB,EAAE,CAAC;QAC7C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC;QAEnC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE;YACpB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,mDAA0B,CAAC,IAAI,CAAC,CAAC,CAAC;YACxF,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2DAA2D;IAC3D,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC7C,CAAC;IAED,8DAA8D;IAC9D,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3B,CAAC;IAED,gGAAgG;IAChG,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,sFAAsF;IACtF,IAAI,wBAAwB;QAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;IACjC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;IACnC,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACK,qBAAqB;QAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAA8B;QACrC,IAAI,CAAC,IAAI,CACP,cAAc,CAAC,4BAA4B,EAC3C,IAAI,uDAA8B,CAAC,IAAI,CAAC,CACzC,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,IAAI,CACP,cAAc,CAAC,2BAA2B,EAC1C,IAAI,sDAA6B,CAAC,IAAI,EAAE,YAAY,CAAC,CACtD,CAAC;YACF,QAAQ,CAAC,IAAI,wBAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YACpC,OAAO;SACR;QAED,MAAM,eAAe,GAAoB,EAAE,QAAQ,EAAE,CAAC;QACtD,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC3D,IAAI,kBAAkB,EAAE;YACtB,eAAe,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBACtC,eAAe,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;gBACnC,eAAe,CAAC,KAAK,GAAG,SAAS,CAAC;gBAElC,IAAI,CAAC,IAAI,CACP,cAAc,CAAC,2BAA2B,EAC1C,IAAI,sDAA6B,CAAC,IAAI,EAAE,SAAS,CAAC,CACnD,CAAC;gBACF,eAAe,CAAC,QAAQ,CACtB,IAAI,8BAAqB,CACvB,IAAI,CAAC,YAAY;oBACf,CAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE;oBAC9B,CAAC,CAAC,gEAAgE,EACpE,IAAI,CAAC,OAAO,CACb,CACF,CAAC;YACJ,CAAC,EAAE,kBAAkB,CAAC,CAAC;SACxB;QAED,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,UAAsB;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/B,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,KAAK,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QAEjE,IAAI,CAAC,WAAW,EAAE;YAChB,UAAU,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,iDAAwB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAEhG,IAAI,WAAW,EAAE;YACf,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC;YACjF,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;SAC7C;QAED,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAoB;QACxB,IAAI,IAAI,CAAC,YAAY,IAAI,SAAS,EAAE;YAClC,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpD,+DAA+D;YAC/D,kDAAkD;YAClD,IAAI,UAAU,IAAI,IAAI,EAAE;gBACtB,kBAAkB;gBAClB,MAAM,IAAI,yBAAiB,CAAC,yDAAyD,CAAC,CAAC;aACxF;iBAAM;gBACL,+CAA+C;gBAC/C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;aAClD;SACF;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACxB;QAED,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,mDAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACtF,CAAC;IAKD,KAAK,CAAC,QAAwC,EAAE,GAAoB;QAClE,IAAI,OAAO,GAAG,QAAwB,CAAC;QACvC,MAAM,QAAQ,GAAG,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,QAAQ,CAAmB,CAAC;QACrD,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;YACjC,OAAO,GAAG,EAAE,CAAC;SACd;QAED,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;QACnD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO,QAAQ,EAAE,CAAC;SACnB;QAED,+CAA+C;QAC/C,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAExC,uBAAuB;QACvB,OAAO,IAAI,CAAC,aAAa,EAAE;YACzB,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,CAAC;YAC/C,IAAI,eAAe,EAAE;gBACnB,IAAI,eAAe,CAAC,KAAK,EAAE;oBACzB,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;iBACrC;gBACD,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE;oBAChC,+DAA+D;oBAC/D,eAAe,CAAC,QAAQ,CAAC,IAAI,yBAAiB,CAAC,wBAAwB,CAAC,CAAC,CAAC;iBAC3E;aACF;SACF;QAED,gCAAgC;QAChC,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjD,IAAI,gBAAgB,EAAE;YACpB,YAAY,CAAC,gBAAgB,CAAC,CAAC;SAChC;QAED,6BAA6B;QAC7B,IAAI,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE;YACzD,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC5C;QAED,sCAAsC;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAA,iBAAS,EACP,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,EAC5B,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE;YACX,IAAI,CAAC,IAAI,CACP,cAAc,CAAC,iBAAiB,EAChC,IAAI,8CAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CACpD,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC5B,CAAC,EACD,GAAG,CAAC,EAAE;YACJ,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,IAAI,kDAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;YACtF,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,cAAc,CACZ,IAA4B,EAC5B,EAA0B,EAC1B,QAA+B;QAE/B,IAAI,IAAI,EAAE;YACR,wEAAwE;YACxE,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACpC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;oBAClC,IAAI,KAAK,EAAE;wBACT,QAAQ,CAAC,KAAK,CAAC,CAAC;qBACjB;yBAAM;wBACL,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;qBAC7B;iBACF;YACH,CAAC,CAAC,CAAC;YAEH,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAC1B,2EAA2E;YAC3E,EAAE,CAAC,GAAiB,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC5C,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;oBAClC,IAAI,KAAK,EAAE;wBACT,QAAQ,CAAC,KAAK,CAAC,CAAC;qBACjB;yBAAM;wBACL,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;qBAC7B;iBACF;gBAED,IAAI,IAAI,EAAE;oBACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBACpB;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;;AA/XH,wCAgYC;AA5VC;;;GAGG;AACa,sCAAuB,GAAG,mCAAuB,CAAC;AAClE;;;GAGG;AACa,qCAAsB,GAAG,kCAAsB,CAAC;AAChE;;;GAGG;AACa,sCAAuB,GAAG,mCAAuB,CAAC;AAClE;;;GAGG;AACa,iCAAkB,GAAG,8BAAkB,CAAC;AACxD;;;GAGG;AACa,+BAAgB,GAAG,4BAAgB,CAAC;AACpD;;;GAGG;AACa,gCAAiB,GAAG,6BAAiB,CAAC;AACtD;;;GAGG;AACa,2CAA4B,GAAG,wCAA4B,CAAC;AAC5E;;;GAGG;AACa,0CAA2B,GAAG,uCAA2B,CAAC;AAC1E;;;GAGG;AACa,qCAAsB,GAAG,kCAAsB,CAAC;AAChE;;;GAGG;AACa,oCAAqB,GAAG,iCAAqB,CAAC;AA6ShE,SAAS,iBAAiB,CAAC,IAAoB;IAC7C,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;QACjD,OAAO;KACR;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IAC7C,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,GAAG,WAAW,EAAE,EAAE,CAAC,EAAE;QAC5D,gBAAgB,CAAC,IAAI,CAAC,CAAC;KACxB;IAED,IAAI,CAAC,iBAAiB,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAoB,EAAE,UAAsB;IACrE,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACvC,IAAI,IAAI,CAAC,YAAY,IAAI,SAAS,EAAE;QAClC,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpD,OAAO,UAAU,CAAC,UAAU,KAAK,UAAU,CAAC;KAC7C;IAED,OAAO,UAAU,CAAC,UAAU,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAoB,EAAE,UAAsB;IACpE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAoB,EAAE,QAA+B;IAC7E,MAAM,cAAc,GAAsB;QACxC,GAAG,IAAI,CAAC,OAAO;QACf,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK;QACzC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC;QAC7B,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,CAAC;KAC5C,CAAC;IAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IACjB,IAAA,iBAAO,EAAC,cAAc,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;QAC1C,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;YACtB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,yCAAyC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrF,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;gBAClC,QAAQ,CAAC,GAAG,CAAC,CAAC;aACf;YAED,OAAO;SACR;QAED,4EAA4E;QAC5E,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACpC,OAAO;SACR;QAED,qDAAqD;QACrD,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,sBAAU,EAAE,uBAAU,CAAC,qBAAqB,CAAC,EAAE;YACrE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;SACvD;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,+CAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAE3F,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,UAAU,CAAC,EAAE,CAAC,uBAAU,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;YAChF,UAAU,CAAC,EAAE,CAAC,uBAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;YACvC,IAAI,SAAS,EAAE;gBACb,IAAI,UAAU,CAAC;gBACf,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;gBACpC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;oBACnD,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;iBACpC;qBAAM;oBACL,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBACpC,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC;iBAC3B;aACF;SACF;QAED,UAAU,CAAC,aAAa,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,6CAAoB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAEvF,wEAAwE;QACxE,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;YAClC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAChC,OAAO;SACR;QAED,wFAAwF;QACxF,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAoB,EAAE,UAAsB,EAAE,MAAc;IACrF,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,8CAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAEjG,uCAAuC;IACvC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IAEjB,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAoB;IAC5C,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,oBAAoB,CAAC,EAAE;QAC7C,OAAO;KACR;IAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC;IAClC,OAAO,IAAI,CAAC,aAAa,EAAE;QACzB,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,EAAE,CAAC;QACrD,IAAI,CAAC,eAAe,EAAE;YACpB,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;YACzB,SAAS;SACV;QAED,IAAI,eAAe,CAAC,UAAU,CAAC,EAAE;YAC/B,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;YACzB,SAAS;SACV;QAED,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE;YAClC,MAAM;SACP;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9C,IAAI,CAAC,UAAU,EAAE;YACf,MAAM;SACP;QAED,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC7C,IAAI,CAAC,IAAI,CACP,cAAc,CAAC,sBAAsB,EACrC,IAAI,kDAAyB,CAAC,IAAI,EAAE,UAAU,CAAC,CAChD,CAAC;YACF,IAAI,eAAe,CAAC,KAAK,EAAE;gBACzB,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;aACrC;YAED,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;YACzB,eAAe,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;SACjD;aAAM;YACL,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;YACxE,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;SAC7C;KACF;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IAC7C,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,IAAI,CAAC,oBAAoB,GAAG,WAAW,CAAC,EAAE;QACvF,gBAAgB,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;YACzC,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;YACjD,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,UAAU,CAAC,EAAE;gBACnD,IAAI,CAAC,GAAG,IAAI,UAAU,EAAE;oBACtB,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;iBACrC;gBAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC;gBACnC,OAAO;aACR;YAED,IAAI,GAAG,EAAE;gBACP,IAAI,CAAC,IAAI,CACP,cAAc,CAAC,2BAA2B,EAC1C,IAAI,sDAA6B,CAAC,IAAI,EAAE,GAAG,CAAC,CAC7C,CAAC;aACH;iBAAM,IAAI,UAAU,EAAE;gBACrB,IAAI,CAAC,IAAI,CACP,cAAc,CAAC,sBAAsB,EACrC,IAAI,kDAAyB,CAAC,IAAI,EAAE,UAAU,CAAC,CAChD,CAAC;aACH;YAED,IAAI,eAAe,CAAC,KAAK,EAAE;gBACzB,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;aACrC;YACD,eAAe,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC;YACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,IAAI,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC;KACpC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"connection_pool.js","sourceRoot":"","sources":["../../src/cmap/connection_pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection_pool_events.js","sourceRoot":"","sources":["../../src/cmap/connection_pool_events.ts"],"names":[],"mappings":";;;AAKA;;;;GAIG;AACH,MAAa,6BAA6B;IAMxC,gBAAgB;IAChB,YAAY,IAAoB;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;CACF;AAXD,sEAWC;AAED;;;;GAIG;AACH,MAAa,0BAA2B,SAAQ,6BAA6B;IAI3E,gBAAgB;IAChB,YAAY,IAAoB;QAC9B,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;CACF;AATD,gEASC;AAED;;;;GAIG;AACH,MAAa,yBAA0B,SAAQ,6BAA6B;IAC1E,gBAAgB;IAChB,YAAY,IAAoB;QAC9B,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;CACF;AALD,8DAKC;AAED;;;;GAIG;AACH,MAAa,sBAAuB,SAAQ,6BAA6B;IAIvE,gBAAgB;IAChB,YAAY,IAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"connection_pool_events.js","sourceRoot":"","sources":["../../src/cmap/connection_pool_events.ts"],"names":[],"mappings":";;;AAKA;;;;GAIG;AACH,MAAa,6BAA6B;IAMxC,gBAAgB;IAChB,YAAY,IAAoB;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;CACF;AAXD,sEAWC;AAED;;;;GAIG;AACH,MAAa,0BAA2B,SAAQ,6BAA6B;IAI3E,gBAAgB;IAChB,YAAY,IAAoB;QAC9B,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;CACF;AATD,gEASC;AAED;;;;GAIG;AACH,MAAa,yBAA0B,SAAQ,6BAA6B;IAC1E,gBAAgB;IAChB,YAAY,IAAoB;QAC9B,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;CACF;AALD,8DAKC;AAED;;;;GAIG;AACH,MAAa,sBAAuB,SAAQ,6BAA6B;IAIvE,gBAAgB;IAChB,YAAY,IAAoB,EAAE,UAAwC;QACxE,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;IACpC,CAAC;CACF;AATD,wDASC;AAED;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,6BAA6B;IAIrE,gBAAgB;IAChB,YAAY,IAAoB,EAAE,UAAsB;QACtD,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;IACpC,CAAC;CACF;AATD,oDASC;AAED;;;;GAIG;AACH,MAAa,qBAAsB,SAAQ,6BAA6B;IAOtE,gBAAgB;IAChB,YAAY,IAAoB,EAAE,UAAsB,EAAE,MAAc;QACtE,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACxC,CAAC;CACF;AAdD,sDAcC;AAED;;;;GAIG;AACH,MAAa,8BAA+B,SAAQ,6BAA6B;IAC/E,gBAAgB;IAChB,YAAY,IAAoB;QAC9B,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;CACF;AALD,wEAKC;AAED;;;;GAIG;AACH,MAAa,6BAA8B,SAAQ,6BAA6B;IAI9E,gBAAgB;IAChB,YAAY,IAAoB,EAAE,MAAyB;QACzD,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AATD,sEASC;AAED;;;;GAIG;AACH,MAAa,yBAA0B,SAAQ,6BAA6B;IAI1E,gBAAgB;IAChB,YAAY,IAAoB,EAAE,UAAsB;QACtD,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;IACpC,CAAC;CACF;AATD,8DASC;AAED;;;;GAIG;AACH,MAAa,wBAAyB,SAAQ,6BAA6B;IAIzE,gBAAgB;IAChB,YAAY,IAAoB,EAAE,UAAsB;QACtD,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;IACpC,CAAC;CACF;AATD,4DASC;AAED;;;;GAIG;AACH,MAAa,0BAA2B,SAAQ,6BAA6B;IAI3E,gBAAgB;IAChB,YAAY,IAAoB,EAAE,SAAoB;QACpD,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AATD,gEASC"}
|
|
@@ -20,9 +20,14 @@ const kBuffer = Symbol('buffer');
|
|
|
20
20
|
class MessageStream extends stream_1.Duplex {
|
|
21
21
|
constructor(options = {}) {
|
|
22
22
|
super(options);
|
|
23
|
+
/** @internal */
|
|
24
|
+
this.isMonitoringConnection = false;
|
|
23
25
|
this.maxBsonMessageSize = options.maxBsonMessageSize || kDefaultMaxBsonMessageSize;
|
|
24
26
|
this[kBuffer] = new utils_1.BufferPool();
|
|
25
27
|
}
|
|
28
|
+
get buffer() {
|
|
29
|
+
return this[kBuffer];
|
|
30
|
+
}
|
|
26
31
|
_write(chunk, _, callback) {
|
|
27
32
|
this[kBuffer].append(chunk);
|
|
28
33
|
processIncomingData(this, callback);
|
|
@@ -102,15 +107,35 @@ function processIncomingData(stream, callback) {
|
|
|
102
107
|
responseTo: message.readInt32LE(8),
|
|
103
108
|
opCode: message.readInt32LE(12)
|
|
104
109
|
};
|
|
110
|
+
const monitorHasAnotherHello = () => {
|
|
111
|
+
if (stream.isMonitoringConnection) {
|
|
112
|
+
// Can we read the next message size?
|
|
113
|
+
if (buffer.length >= 4) {
|
|
114
|
+
const sizeOfMessage = buffer.peek(4).readInt32LE();
|
|
115
|
+
if (sizeOfMessage <= buffer.length) {
|
|
116
|
+
return true;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return false;
|
|
121
|
+
};
|
|
105
122
|
let ResponseType = messageHeader.opCode === constants_1.OP_MSG ? commands_1.BinMsg : commands_1.Response;
|
|
106
123
|
if (messageHeader.opCode !== constants_1.OP_COMPRESSED) {
|
|
107
124
|
const messageBody = message.slice(MESSAGE_HEADER_SIZE);
|
|
108
|
-
|
|
109
|
-
|
|
125
|
+
// If we are a monitoring connection message stream and
|
|
126
|
+
// there is more in the buffer that can be read, skip processing since we
|
|
127
|
+
// want the last hello command response that is in the buffer.
|
|
128
|
+
if (monitorHasAnotherHello()) {
|
|
110
129
|
processIncomingData(stream, callback);
|
|
111
130
|
}
|
|
112
131
|
else {
|
|
113
|
-
|
|
132
|
+
stream.emit('message', new ResponseType(message, messageHeader, messageBody));
|
|
133
|
+
if (buffer.length >= 4) {
|
|
134
|
+
processIncomingData(stream, callback);
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
callback();
|
|
138
|
+
}
|
|
114
139
|
}
|
|
115
140
|
return;
|
|
116
141
|
}
|
|
@@ -130,12 +155,20 @@ function processIncomingData(stream, callback) {
|
|
|
130
155
|
callback(new error_1.MongoDecompressionError('Message body and message header must be the same length'));
|
|
131
156
|
return;
|
|
132
157
|
}
|
|
133
|
-
|
|
134
|
-
|
|
158
|
+
// If we are a monitoring connection message stream and
|
|
159
|
+
// there is more in the buffer that can be read, skip processing since we
|
|
160
|
+
// want the last hello command response that is in the buffer.
|
|
161
|
+
if (monitorHasAnotherHello()) {
|
|
135
162
|
processIncomingData(stream, callback);
|
|
136
163
|
}
|
|
137
164
|
else {
|
|
138
|
-
|
|
165
|
+
stream.emit('message', new ResponseType(message, messageHeader, messageBody));
|
|
166
|
+
if (buffer.length >= 4) {
|
|
167
|
+
processIncomingData(stream, callback);
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
callback();
|
|
171
|
+
}
|
|
139
172
|
}
|
|
140
173
|
});
|
|
141
174
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message_stream.js","sourceRoot":"","sources":["../../src/cmap/message_stream.ts"],"names":[],"mappings":";;;AAAA,mCAA+C;AAG/C,oCAAoE;AAEpE,oCAAgD;AAChD,yCAAmG;AACnG,6DAMqC;AACrC,yDAAkE;AAElE,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,wBAAwB,GAAG,CAAC,CAAC,CAAC,kDAAkD;AAEtF,MAAM,0BAA0B,GAAG,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AACxD,gBAAgB;AAChB,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAwBjC;;;;GAIG;AACH,MAAa,aAAc,SAAQ,eAAM;
|
|
1
|
+
{"version":3,"file":"message_stream.js","sourceRoot":"","sources":["../../src/cmap/message_stream.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,8 @@ const error_1 = require("../../error");
|
|
|
9
9
|
exports.Compressor = Object.freeze({
|
|
10
10
|
none: 0,
|
|
11
11
|
snappy: 1,
|
|
12
|
-
zlib: 2
|
|
12
|
+
zlib: 2,
|
|
13
|
+
zstd: 3
|
|
13
14
|
});
|
|
14
15
|
exports.uncompressibleCommands = new Set([
|
|
15
16
|
constants_1.LEGACY_HELLO_COMMAND,
|
|
@@ -23,6 +24,8 @@ exports.uncompressibleCommands = new Set([
|
|
|
23
24
|
'copydbgetnonce',
|
|
24
25
|
'copydb'
|
|
25
26
|
]);
|
|
27
|
+
const MAX_COMPRESSOR_ID = 3;
|
|
28
|
+
const ZSTD_COMPRESSION_LEVEL = 3;
|
|
26
29
|
// Facilitate compressing a message using an agreed compressor
|
|
27
30
|
function compress(self, dataToBeCompressed, callback) {
|
|
28
31
|
const zlibOptions = {};
|
|
@@ -48,6 +51,12 @@ function compress(self, dataToBeCompressed, callback) {
|
|
|
48
51
|
}
|
|
49
52
|
zlib.deflate(dataToBeCompressed, zlibOptions, callback);
|
|
50
53
|
break;
|
|
54
|
+
case 'zstd':
|
|
55
|
+
if ('kModuleError' in deps_1.ZStandard) {
|
|
56
|
+
return callback(deps_1.ZStandard['kModuleError']);
|
|
57
|
+
}
|
|
58
|
+
deps_1.ZStandard.compress(dataToBeCompressed, ZSTD_COMPRESSION_LEVEL).then(buffer => callback(undefined, buffer), error => callback(error));
|
|
59
|
+
break;
|
|
51
60
|
default:
|
|
52
61
|
throw new error_1.MongoInvalidArgumentError(`Unknown compressor ${self.options.agreedCompressor} failed to compress`);
|
|
53
62
|
}
|
|
@@ -55,7 +64,7 @@ function compress(self, dataToBeCompressed, callback) {
|
|
|
55
64
|
exports.compress = compress;
|
|
56
65
|
// Decompress a message using the given compressor
|
|
57
66
|
function decompress(compressorID, compressedData, callback) {
|
|
58
|
-
if (compressorID < 0 || compressorID >
|
|
67
|
+
if (compressorID < 0 || compressorID > MAX_COMPRESSOR_ID) {
|
|
59
68
|
throw new error_1.MongoDecompressionError(`Server sent message compressed using an unsupported compressor. (Received compressor ID ${compressorID})`);
|
|
60
69
|
}
|
|
61
70
|
switch (compressorID) {
|
|
@@ -73,6 +82,13 @@ function decompress(compressorID, compressedData, callback) {
|
|
|
73
82
|
}
|
|
74
83
|
break;
|
|
75
84
|
}
|
|
85
|
+
case exports.Compressor.zstd: {
|
|
86
|
+
if ('kModuleError' in deps_1.ZStandard) {
|
|
87
|
+
return callback(deps_1.ZStandard['kModuleError']);
|
|
88
|
+
}
|
|
89
|
+
deps_1.ZStandard.decompress(compressedData).then(buffer => callback(undefined, buffer), error => callback(error));
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
76
92
|
case exports.Compressor.zlib:
|
|
77
93
|
zlib.inflate(compressedData, callback);
|
|
78
94
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compression.js","sourceRoot":"","sources":["../../../src/cmap/wire_protocol/compression.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAE7B,+CAAuD;AACvD,
|
|
1
|
+
{"version":3,"file":"compression.js","sourceRoot":"","sources":["../../../src/cmap/wire_protocol/compression.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OP_MSG = exports.OP_COMPRESSED = exports.OP_KILL_CURSORS = exports.OP_DELETE = exports.OP_GETMORE = exports.OP_QUERY = exports.OP_INSERT = exports.OP_UPDATE = exports.OP_REPLY = exports.MAX_SUPPORTED_WIRE_VERSION = exports.MIN_SUPPORTED_WIRE_VERSION = exports.MAX_SUPPORTED_SERVER_VERSION = exports.MIN_SUPPORTED_SERVER_VERSION = void 0;
|
|
4
4
|
exports.MIN_SUPPORTED_SERVER_VERSION = '3.6';
|
|
5
|
-
exports.MAX_SUPPORTED_SERVER_VERSION = '
|
|
5
|
+
exports.MAX_SUPPORTED_SERVER_VERSION = '6.0';
|
|
6
6
|
exports.MIN_SUPPORTED_WIRE_VERSION = 6;
|
|
7
|
-
exports.MAX_SUPPORTED_WIRE_VERSION =
|
|
7
|
+
exports.MAX_SUPPORTED_WIRE_VERSION = 17;
|
|
8
8
|
exports.OP_REPLY = 1;
|
|
9
9
|
exports.OP_UPDATE = 2001;
|
|
10
10
|
exports.OP_INSERT = 2002;
|