mongodb 4.1.1 → 4.2.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.
Files changed (174) hide show
  1. package/README.md +24 -17
  2. package/lib/admin.js +5 -5
  3. package/lib/admin.js.map +1 -1
  4. package/lib/bulk/common.js +60 -56
  5. package/lib/bulk/common.js.map +1 -1
  6. package/lib/change_stream.js +15 -13
  7. package/lib/change_stream.js.map +1 -1
  8. package/lib/cmap/auth/gssapi.js +1 -1
  9. package/lib/cmap/auth/gssapi.js.map +1 -1
  10. package/lib/cmap/auth/mongo_credentials.js +2 -1
  11. package/lib/cmap/auth/mongo_credentials.js.map +1 -1
  12. package/lib/cmap/auth/mongocr.js +2 -2
  13. package/lib/cmap/auth/mongocr.js.map +1 -1
  14. package/lib/cmap/auth/mongodb_aws.js +23 -28
  15. package/lib/cmap/auth/mongodb_aws.js.map +1 -1
  16. package/lib/cmap/auth/plain.js +1 -1
  17. package/lib/cmap/auth/plain.js.map +1 -1
  18. package/lib/cmap/auth/scram.js +5 -5
  19. package/lib/cmap/auth/scram.js.map +1 -1
  20. package/lib/cmap/auth/x509.js +1 -1
  21. package/lib/cmap/auth/x509.js.map +1 -1
  22. package/lib/cmap/command_monitoring_events.js +15 -15
  23. package/lib/cmap/command_monitoring_events.js.map +1 -1
  24. package/lib/cmap/commands.js +1 -1
  25. package/lib/cmap/commands.js.map +1 -1
  26. package/lib/cmap/connect.js +2 -2
  27. package/lib/cmap/connect.js.map +1 -1
  28. package/lib/cmap/connection.js +15 -15
  29. package/lib/cmap/connection.js.map +1 -1
  30. package/lib/cmap/connection_pool.js +3 -3
  31. package/lib/cmap/connection_pool.js.map +1 -1
  32. package/lib/cmap/message_stream.js +2 -2
  33. package/lib/cmap/message_stream.js.map +1 -1
  34. package/lib/cmap/stream_description.js +1 -1
  35. package/lib/cmap/stream_description.js.map +1 -1
  36. package/lib/cmap/wire_protocol/constants.js +4 -4
  37. package/lib/collection.js +42 -41
  38. package/lib/collection.js.map +1 -1
  39. package/lib/connection_string.js +94 -58
  40. package/lib/connection_string.js.map +1 -1
  41. package/lib/cursor/abstract_cursor.js +11 -11
  42. package/lib/cursor/abstract_cursor.js.map +1 -1
  43. package/lib/cursor/aggregation_cursor.js +15 -15
  44. package/lib/cursor/aggregation_cursor.js.map +1 -1
  45. package/lib/cursor/find_cursor.js +23 -23
  46. package/lib/cursor/find_cursor.js.map +1 -1
  47. package/lib/db.js +20 -20
  48. package/lib/db.js.map +1 -1
  49. package/lib/deps.js +1 -1
  50. package/lib/deps.js.map +1 -1
  51. package/lib/gridfs/index.js +3 -3
  52. package/lib/gridfs/index.js.map +1 -1
  53. package/lib/gridfs/upload.js +1 -1
  54. package/lib/gridfs/upload.js.map +1 -1
  55. package/lib/index.js +8 -2
  56. package/lib/index.js.map +1 -1
  57. package/lib/logger.js +5 -5
  58. package/lib/logger.js.map +1 -1
  59. package/lib/mongo_client.js +7 -7
  60. package/lib/mongo_client.js.map +1 -1
  61. package/lib/mongo_types.js.map +1 -1
  62. package/lib/operations/add_user.js +3 -3
  63. package/lib/operations/add_user.js.map +1 -1
  64. package/lib/operations/aggregate.js +3 -4
  65. package/lib/operations/aggregate.js.map +1 -1
  66. package/lib/operations/bulk_write.js +1 -1
  67. package/lib/operations/bulk_write.js.map +1 -1
  68. package/lib/operations/command.js +7 -3
  69. package/lib/operations/command.js.map +1 -1
  70. package/lib/operations/common_functions.js +1 -1
  71. package/lib/operations/common_functions.js.map +1 -1
  72. package/lib/operations/connect.js +1 -1
  73. package/lib/operations/connect.js.map +1 -1
  74. package/lib/operations/count.js +1 -1
  75. package/lib/operations/count.js.map +1 -1
  76. package/lib/operations/count_documents.js.map +1 -1
  77. package/lib/operations/create_collection.js +1 -1
  78. package/lib/operations/create_collection.js.map +1 -1
  79. package/lib/operations/delete.js +6 -6
  80. package/lib/operations/delete.js.map +1 -1
  81. package/lib/operations/distinct.js +4 -4
  82. package/lib/operations/distinct.js.map +1 -1
  83. package/lib/operations/drop.js +2 -2
  84. package/lib/operations/drop.js.map +1 -1
  85. package/lib/operations/estimated_document_count.js +2 -2
  86. package/lib/operations/estimated_document_count.js.map +1 -1
  87. package/lib/operations/eval.js.map +1 -1
  88. package/lib/operations/execute_operation.js +17 -7
  89. package/lib/operations/execute_operation.js.map +1 -1
  90. package/lib/operations/find.js +8 -8
  91. package/lib/operations/find.js.map +1 -1
  92. package/lib/operations/find_and_modify.js +7 -7
  93. package/lib/operations/find_and_modify.js.map +1 -1
  94. package/lib/operations/indexes.js +14 -14
  95. package/lib/operations/indexes.js.map +1 -1
  96. package/lib/operations/insert.js +5 -5
  97. package/lib/operations/insert.js.map +1 -1
  98. package/lib/operations/list_collections.js +12 -7
  99. package/lib/operations/list_collections.js.map +1 -1
  100. package/lib/operations/list_databases.js +1 -1
  101. package/lib/operations/list_databases.js.map +1 -1
  102. package/lib/operations/map_reduce.js +6 -6
  103. package/lib/operations/map_reduce.js.map +1 -1
  104. package/lib/operations/operation.js +2 -1
  105. package/lib/operations/operation.js.map +1 -1
  106. package/lib/operations/remove_user.js +1 -1
  107. package/lib/operations/remove_user.js.map +1 -1
  108. package/lib/operations/rename.js +2 -2
  109. package/lib/operations/rename.js.map +1 -1
  110. package/lib/operations/set_profiling_level.js +1 -1
  111. package/lib/operations/set_profiling_level.js.map +1 -1
  112. package/lib/operations/stats.js +2 -2
  113. package/lib/operations/stats.js.map +1 -1
  114. package/lib/operations/update.js +12 -12
  115. package/lib/operations/update.js.map +1 -1
  116. package/lib/sdam/monitor.js +14 -14
  117. package/lib/sdam/monitor.js.map +1 -1
  118. package/lib/sdam/server.js +19 -12
  119. package/lib/sdam/server.js.map +1 -1
  120. package/lib/sdam/server_description.js +3 -3
  121. package/lib/sdam/server_description.js.map +1 -1
  122. package/lib/sdam/server_selection.js +20 -1
  123. package/lib/sdam/server_selection.js.map +1 -1
  124. package/lib/sdam/srv_polling.js +9 -9
  125. package/lib/sdam/srv_polling.js.map +1 -1
  126. package/lib/sdam/topology.js +29 -21
  127. package/lib/sdam/topology.js.map +1 -1
  128. package/lib/sdam/topology_description.js +34 -12
  129. package/lib/sdam/topology_description.js.map +1 -1
  130. package/lib/sessions.js +19 -19
  131. package/lib/sessions.js.map +1 -1
  132. package/lib/transactions.js.map +1 -1
  133. package/lib/utils.js +53 -46
  134. package/lib/utils.js.map +1 -1
  135. package/mongodb.d.ts +97 -50
  136. package/mongodb.ts34.d.ts +96 -50
  137. package/package.json +44 -47
  138. package/src/bulk/common.ts +56 -35
  139. package/src/change_stream.ts +8 -6
  140. package/src/cmap/auth/mongo_credentials.ts +14 -3
  141. package/src/cmap/auth/mongodb_aws.ts +32 -31
  142. package/src/cmap/command_monitoring_events.ts +1 -1
  143. package/src/cmap/connection.ts +1 -0
  144. package/src/cmap/wire_protocol/constants.ts +4 -4
  145. package/src/collection.ts +32 -24
  146. package/src/connection_string.ts +103 -52
  147. package/src/cursor/abstract_cursor.ts +6 -4
  148. package/src/cursor/aggregation_cursor.ts +3 -3
  149. package/src/cursor/find_cursor.ts +1 -1
  150. package/src/db.ts +5 -6
  151. package/src/deps.ts +56 -19
  152. package/src/gridfs/download.ts +1 -1
  153. package/src/gridfs/upload.ts +11 -7
  154. package/src/index.ts +12 -1
  155. package/src/mongo_client.ts +18 -11
  156. package/src/mongo_types.ts +10 -13
  157. package/src/operations/aggregate.ts +1 -2
  158. package/src/operations/command.ts +5 -0
  159. package/src/operations/count.ts +1 -1
  160. package/src/operations/count_documents.ts +1 -1
  161. package/src/operations/create_collection.ts +1 -1
  162. package/src/operations/eval.ts +1 -1
  163. package/src/operations/execute_operation.ts +13 -2
  164. package/src/operations/indexes.ts +2 -2
  165. package/src/operations/list_collections.ts +12 -4
  166. package/src/operations/list_databases.ts +6 -1
  167. package/src/operations/operation.ts +3 -0
  168. package/src/sdam/server.ts +8 -0
  169. package/src/sdam/server_selection.ts +25 -0
  170. package/src/sdam/srv_polling.ts +12 -11
  171. package/src/sdam/topology.ts +27 -10
  172. package/src/sdam/topology_description.ts +35 -11
  173. package/src/transactions.ts +2 -2
  174. package/src/utils.ts +67 -56
package/README.md CHANGED
@@ -2,19 +2,20 @@
2
2
 
3
3
  The official [MongoDB](https://www.mongodb.com/) driver for Node.js.
4
4
 
5
- **Upgrading to version 4? Take a look at our [upgrade guide here](https://github.com/mongodb/node-mongodb-native/blob/4.1/docs/CHANGES_4.0.0.md)!**
5
+ **Upgrading to version 4? Take a look at our [upgrade guide here](https://github.com/mongodb/node-mongodb-native/blob/HEAD/docs/CHANGES_4.0.0.md)!**
6
6
 
7
7
  ## Quick Links
8
8
 
9
- | what | where |
10
- | ------------- | ------------------------------------------------------------------------------------------------------ |
11
- | documentation | [docs.mongodb.com/drivers/node](https://docs.mongodb.com/drivers/node) |
12
- | api-doc | [mongodb.github.io/node-mongodb-native/4.0/](https://mongodb.github.io/node-mongodb-native/4.0/) |
13
- | npm package | [www.npmjs.com/package/mongodb](https://www.npmjs.com/package/mongodb) |
14
- | source | [github.com/mongodb/node-mongodb-native](https://github.com/mongodb/node-mongodb-native) |
15
- | mongodb | [www.mongodb.com](https://www.mongodb.com) |
16
- | changelog | [HISTORY.md](https://github.com/mongodb/node-mongodb-native/blob/4.0/docs/HISTORY.md) |
17
- | upgrade to v4 | [docs/CHANGES_4.0.0.md](https://github.com/mongodb/node-mongodb-native/blob/4.0/docs/CHANGES_4.0.0.md) |
9
+ | what | where |
10
+ | ------------- | ------------------------------------------------------------------------------------------------------- |
11
+ | documentation | [docs.mongodb.com/drivers/node](https://docs.mongodb.com/drivers/node) |
12
+ | api-doc | [mongodb.github.io/node-mongodb-native/4.1/](https://mongodb.github.io/node-mongodb-native/4.1/) |
13
+ | npm package | [www.npmjs.com/package/mongodb](https://www.npmjs.com/package/mongodb) |
14
+ | source | [github.com/mongodb/node-mongodb-native](https://github.com/mongodb/node-mongodb-native) |
15
+ | mongodb | [www.mongodb.com](https://www.mongodb.com) |
16
+ | changelog | [HISTORY.md](https://github.com/mongodb/node-mongodb-native/blob/HEAD/HISTORY.md) |
17
+ | upgrade to v4 | [docs/CHANGES_4.0.0.md](https://github.com/mongodb/node-mongodb-native/blob/HEAD/docs/CHANGES_4.0.0.md) |
18
+ | contributing | [CONTRIBUTING.md](https://github.com/mongodb/node-mongodb-native/blob/HEAD/CONTRIBUTING.md) |
18
19
 
19
20
  ### Bugs / Feature Requests
20
21
 
@@ -34,14 +35,14 @@ For issues with, questions about, or feedback for the Node.js driver, please loo
34
35
 
35
36
  ### Change Log
36
37
 
37
- Change history can be found in [`HISTORY.md`](https://github.com/mongodb/node-mongodb-native/blob/4.0/HISTORY.md).
38
+ Change history can be found in [`HISTORY.md`](https://github.com/mongodb/node-mongodb-native/blob/HEAD/HISTORY.md).
38
39
 
39
40
  ### Compatibility
40
41
 
41
42
  For version compatibility matrices, please refer to the following links:
42
43
 
43
- - [MongoDB](https://docs.mongodb.com/drivers/node/compatibility#mongodb-compatibility)
44
- - [NodeJS](https://docs.mongodb.com/drivers/node/compatibility#language-compatibility)
44
+ - [MongoDB](https://docs.mongodb.com/drivers/node/current/compatibility/#mongodb-compatibility)
45
+ - [NodeJS](https://docs.mongodb.com/drivers/node/current/compatibility/#language-compatibility)
45
46
 
46
47
  #### Typescript Version
47
48
 
@@ -51,7 +52,7 @@ If you run into any unexpected compiler failures please let us know and we will
51
52
 
52
53
  ## Installation
53
54
 
54
- The recommended way to get started using the Node.js 4.0 driver is by using the `npm` (Node Package Manager) to install the dependency in your project.
55
+ The recommended way to get started using the Node.js 4.x driver is by using the `npm` (Node Package Manager) to install the dependency in your project.
55
56
 
56
57
  After you've created your own project using `npm init`, you can run:
57
58
 
@@ -63,6 +64,12 @@ yarn add mongodb
63
64
 
64
65
  This will download the MongoDB driver and add a dependency entry in your `package.json` file.
65
66
 
67
+ If you are a Typescript user, you will need the Node.js type definitions to use the driver's definitions:
68
+
69
+ ```sh
70
+ npm install -D @types/node
71
+ ```
72
+
66
73
  ## Troubleshooting
67
74
 
68
75
  The MongoDB driver depends on several other packages. These are:
@@ -72,7 +79,7 @@ The MongoDB driver depends on several other packages. These are:
72
79
  - [kerberos](https://github.com/mongodb-js/kerberos)
73
80
  - [mongodb-client-encryption](https://github.com/mongodb/libmongocrypt#readme)
74
81
 
75
- Some of these packages include native C++ extensions, consult the [trouble shooting guide here](https://github.com/mongodb/node-mongodb-native/blob/4.1/docs/native-extensions.md) if you run into issues.
82
+ Some of these packages include native C++ extensions. Consult the [trouble shooting guide here](https://github.com/mongodb/node-mongodb-native/blob/HEAD/docs/native-extensions.md) if you run into issues.
76
83
 
77
84
  ## Quick Start
78
85
 
@@ -233,7 +240,7 @@ For more detailed information, see the [indexing strategies page](https://docs.m
233
240
 
234
241
  ## Error Handling
235
242
 
236
- If you need to filter certain errors from our driver we have a helpful tree of errors described in [docs/errors.md](https://github.com/mongodb/node-mongodb-native/blob/4.1/docs/errors.md).
243
+ If you need to filter certain errors from our driver we have a helpful tree of errors described in [docs/errors.md](https://github.com/mongodb/node-mongodb-native/blob/HEAD/docs/errors.md).
237
244
 
238
245
  It is our recommendation to use `instanceof` checks on errors and to avoid relying on parsing `error.message` and `error.name` strings in your code.
239
246
  We guarantee `instanceof` checks will pass according to semver guidelines, but errors may be sub-classed or their messages may change at any time, even patch releases, as we see fit to increase the helpfulness of the errors.
@@ -269,4 +276,4 @@ try {
269
276
  [Apache 2.0](LICENSE.md)
270
277
 
271
278
  © 2009-2012 Christian Amor Kvalheim
272
- © 2012-present MongoDB [Contributors](https://github.com/mongodb/node-mongodb-native/blob/4.1/CONTRIBUTORS.md)
279
+ © 2012-present MongoDB [Contributors](https://github.com/mongodb/node-mongodb-native/blob/HEAD/CONTRIBUTORS.md)
package/lib/admin.js CHANGED
@@ -50,7 +50,7 @@ class Admin {
50
50
  if (typeof options === 'function')
51
51
  (callback = options), (options = {});
52
52
  options = Object.assign({ dbName: 'admin' }, options);
53
- return execute_operation_1.executeOperation(utils_1.getTopology(this.s.db), new run_command_1.RunCommandOperation(this.s.db, command, options), callback);
53
+ return (0, execute_operation_1.executeOperation)((0, utils_1.getTopology)(this.s.db), new run_command_1.RunCommandOperation(this.s.db, command, options), callback);
54
54
  }
55
55
  buildInfo(options, callback) {
56
56
  if (typeof options === 'function')
@@ -93,25 +93,25 @@ class Admin {
93
93
  (callback = options), (options = {});
94
94
  }
95
95
  options = Object.assign({ dbName: 'admin' }, options);
96
- return execute_operation_1.executeOperation(utils_1.getTopology(this.s.db), new add_user_1.AddUserOperation(this.s.db, username, password, options), callback);
96
+ return (0, execute_operation_1.executeOperation)((0, utils_1.getTopology)(this.s.db), new add_user_1.AddUserOperation(this.s.db, username, password, options), callback);
97
97
  }
98
98
  removeUser(username, options, callback) {
99
99
  if (typeof options === 'function')
100
100
  (callback = options), (options = {});
101
101
  options = Object.assign({ dbName: 'admin' }, options);
102
- return execute_operation_1.executeOperation(utils_1.getTopology(this.s.db), new remove_user_1.RemoveUserOperation(this.s.db, username, options), callback);
102
+ return (0, execute_operation_1.executeOperation)((0, utils_1.getTopology)(this.s.db), new remove_user_1.RemoveUserOperation(this.s.db, username, options), callback);
103
103
  }
104
104
  validateCollection(collectionName, options, callback) {
105
105
  if (typeof options === 'function')
106
106
  (callback = options), (options = {});
107
107
  options = options !== null && options !== void 0 ? options : {};
108
- return execute_operation_1.executeOperation(utils_1.getTopology(this.s.db), new validate_collection_1.ValidateCollectionOperation(this, collectionName, options), callback);
108
+ return (0, execute_operation_1.executeOperation)((0, utils_1.getTopology)(this.s.db), new validate_collection_1.ValidateCollectionOperation(this, collectionName, options), callback);
109
109
  }
110
110
  listDatabases(options, callback) {
111
111
  if (typeof options === 'function')
112
112
  (callback = options), (options = {});
113
113
  options = options !== null && options !== void 0 ? options : {};
114
- return execute_operation_1.executeOperation(utils_1.getTopology(this.s.db), new list_databases_1.ListDatabasesOperation(this.s.db, options), callback);
114
+ return (0, execute_operation_1.executeOperation)((0, utils_1.getTopology)(this.s.db), new list_databases_1.ListDatabasesOperation(this.s.db, options), callback);
115
115
  }
116
116
  replSetGetStatus(options, callback) {
117
117
  if (typeof options === 'function')
package/lib/admin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"admin.js","sourceRoot":"","sources":["../src/admin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin.js","sourceRoot":"","sources":["../src/admin.ts"],"names":[],"mappings":";;;AAAA,oDAAyE;AACzE,0DAAkF;AAClF,0EAG0C;AAC1C,gEAIqC;AACrC,sEAAkE;AAClE,0DAAkF;AAClF,mCAAgD;AAUhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAa,KAAK;IAIhB;;;OAGG;IACH,YAAY,EAAM;QAChB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC;IAClB,CAAC;IAaD,OAAO,CACL,OAAiB,EACjB,OAAgD,EAChD,QAA6B;QAE7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;QAEtD,OAAO,IAAA,oCAAgB,EACrB,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EACtB,IAAI,iCAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,EACpD,QAAQ,CACT,CAAC;IACJ,CAAC;IAYD,SAAS,CACP,OAAsD,EACtD,QAA6B;QAE7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,QAA8B,CAAC,CAAC;IACjF,CAAC;IAYD,UAAU,CACR,OAAsD,EACtD,QAA6B;QAE7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,QAA8B,CAAC,CAAC;IACjF,CAAC;IAYD,YAAY,CACV,OAAsD,EACtD,QAA6B;QAE7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,QAA8B,CAAC,CAAC;IACpF,CAAC;IAYD,IAAI,CACF,OAAsD,EACtD,QAA6B;QAE7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,QAA8B,CAAC,CAAC;IAC5E,CAAC;IAuBD,OAAO,CACL,QAAgB,EAChB,QAAuD,EACvD,OAA6C,EAC7C,QAA6B;QAE7B,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;YAClC,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;SAC/D;aAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YACvC,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;gBACjC,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;aACpE;iBAAM;gBACL,CAAC,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;aACtE;SACF;aAAM;YACL,IAAI,OAAO,OAAO,KAAK,UAAU;gBAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;SACzE;QAED,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;QAEtD,OAAO,IAAA,oCAAgB,EACrB,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EACtB,IAAI,2BAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAC5D,QAAQ,CACT,CAAC;IACJ,CAAC;IAaD,UAAU,CACR,QAAgB,EAChB,OAA+C,EAC/C,QAA4B;QAE5B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;QAEtD,OAAO,IAAA,oCAAgB,EACrB,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EACtB,IAAI,iCAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,EACrD,QAAQ,CACT,CAAC;IACJ,CAAC;IAiBD,kBAAkB,CAChB,cAAsB,EACtB,OAAwD,EACxD,QAA6B;QAE7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QAExB,OAAO,IAAA,oCAAgB,EACrB,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EACtB,IAAI,iDAA2B,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,EAC9D,QAAQ,CACT,CAAC;IACJ,CAAC;IAYD,aAAa,CACX,OAA8D,EAC9D,QAAwC;QAExC,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QAExB,OAAO,IAAA,oCAAgB,EACrB,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EACtB,IAAI,uCAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAC9C,QAAQ,CACT,CAAC;IACJ,CAAC;IAYD,gBAAgB,CACd,OAAsD,EACtD,QAA6B;QAE7B,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACxE,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,QAA8B,CAAC,CAAC;IACxF,CAAC;CACF;AApQD,sBAoQC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BulkOperationBase = exports.FindOperators = exports.MongoBulkWriteError = exports.WriteError = exports.WriteConcernError = exports.BulkWriteResult = exports.Batch = exports.BatchType = void 0;
3
+ exports.BulkOperationBase = exports.FindOperators = exports.MongoBulkWriteError = exports.mergeBatchResults = exports.WriteError = exports.WriteConcernError = exports.BulkWriteResult = exports.Batch = exports.BatchType = void 0;
4
4
  const promise_provider_1 = require("../promise_provider");
5
5
  const bson_1 = require("../bson");
6
6
  const error_1 = require("../error");
@@ -240,6 +240,10 @@ class WriteError {
240
240
  get errmsg() {
241
241
  return this.err.errmsg;
242
242
  }
243
+ /** WriteError details. */
244
+ get errInfo() {
245
+ return this.err.errInfo;
246
+ }
243
247
  /** Returns the underlying operation that caused the error */
244
248
  getOperation() {
245
249
  return this.err.op;
@@ -252,6 +256,10 @@ class WriteError {
252
256
  }
253
257
  }
254
258
  exports.WriteError = WriteError;
259
+ /** Converts the number to a Long or returns it. */
260
+ function longOrConvert(value) {
261
+ return typeof value === 'number' ? bson_1.Long.fromNumber(value) : value;
262
+ }
255
263
  /** Merges results into shared data structure */
256
264
  function mergeBatchResults(batch, bulkResult, err, result) {
257
265
  // If we have an error set the result to be the err object
@@ -271,6 +279,7 @@ function mergeBatchResults(batch, bulkResult, err, result) {
271
279
  index: 0,
272
280
  code: result.code || 0,
273
281
  errmsg: result.message,
282
+ errInfo: result.errInfo,
274
283
  op: batch.operations[0]
275
284
  };
276
285
  bulkResult.writeErrors.push(new WriteError(writeError));
@@ -279,43 +288,37 @@ function mergeBatchResults(batch, bulkResult, err, result) {
279
288
  else if (result.ok === 0 && bulkResult.ok === 0) {
280
289
  return;
281
290
  }
282
- // Deal with opTime if available
291
+ // The server write command specification states that lastOp is an optional
292
+ // mongod only field that has a type of timestamp. Across various scarce specs
293
+ // where opTime is mentioned, it is an "opaque" object that can have a "ts" and
294
+ // "t" field with Timestamp and Long as their types respectively.
295
+ // The "lastOp" field of the bulk write result is never mentioned in the driver
296
+ // specifications or the bulk write spec, so we should probably just keep its
297
+ // value consistent since it seems to vary.
298
+ // See: https://github.com/mongodb/specifications/blob/master/source/driver-bulk-update.rst#results-object
283
299
  if (result.opTime || result.lastOp) {
284
- const opTime = result.lastOp || result.opTime;
285
- let lastOpTS = null;
286
- let lastOpT = null;
287
- // We have a time stamp
288
- if (opTime && opTime._bsontype === 'Timestamp') {
289
- if (bulkResult.opTime == null) {
290
- bulkResult.opTime = opTime;
291
- }
292
- else if (opTime.greaterThan(bulkResult.opTime)) {
293
- bulkResult.opTime = opTime;
294
- }
300
+ let opTime = result.lastOp || result.opTime;
301
+ // If the opTime is a Timestamp, convert it to a consistent format to be
302
+ // able to compare easily. Converting to the object from a timestamp is
303
+ // much more straightforward than the other direction.
304
+ if (opTime._bsontype === 'Timestamp') {
305
+ opTime = { ts: opTime, t: bson_1.Long.ZERO };
306
+ }
307
+ // If there's no lastOp, just set it.
308
+ if (!bulkResult.opTime) {
309
+ bulkResult.opTime = opTime;
295
310
  }
296
311
  else {
297
- // Existing TS
298
- if (bulkResult.opTime) {
299
- lastOpTS =
300
- typeof bulkResult.opTime.ts === 'number'
301
- ? bson_1.Long.fromNumber(bulkResult.opTime.ts)
302
- : bulkResult.opTime.ts;
303
- lastOpT =
304
- typeof bulkResult.opTime.t === 'number'
305
- ? bson_1.Long.fromNumber(bulkResult.opTime.t)
306
- : bulkResult.opTime.t;
307
- }
308
- // Current OpTime TS
309
- const opTimeTS = typeof opTime.ts === 'number' ? bson_1.Long.fromNumber(opTime.ts) : opTime.ts;
310
- const opTimeT = typeof opTime.t === 'number' ? bson_1.Long.fromNumber(opTime.t) : opTime.t;
311
- // Compare the opTime's
312
- if (bulkResult.opTime == null) {
313
- bulkResult.opTime = opTime;
314
- }
315
- else if (opTimeTS.greaterThan(lastOpTS)) {
312
+ // First compare the ts values and set if the opTimeTS value is greater.
313
+ const lastOpTS = longOrConvert(bulkResult.opTime.ts);
314
+ const opTimeTS = longOrConvert(opTime.ts);
315
+ if (opTimeTS.greaterThan(lastOpTS)) {
316
316
  bulkResult.opTime = opTime;
317
317
  }
318
318
  else if (opTimeTS.equals(lastOpTS)) {
319
+ // If the ts values are equal, then compare using the t values.
320
+ const lastOpT = longOrConvert(bulkResult.opTime.t);
321
+ const opTimeT = longOrConvert(opTime.t);
319
322
  if (opTimeT.greaterThan(lastOpT)) {
320
323
  bulkResult.opTime = opTime;
321
324
  }
@@ -366,6 +369,7 @@ function mergeBatchResults(batch, bulkResult, err, result) {
366
369
  index: batch.originalIndexes[result.writeErrors[i].index],
367
370
  code: result.writeErrors[i].code,
368
371
  errmsg: result.writeErrors[i].errmsg,
372
+ errInfo: result.writeErrors[i].errInfo,
369
373
  op: batch.operations[result.writeErrors[i].index]
370
374
  };
371
375
  bulkResult.writeErrors.push(new WriteError(writeError));
@@ -375,6 +379,7 @@ function mergeBatchResults(batch, bulkResult, err, result) {
375
379
  bulkResult.writeConcernErrors.push(new WriteConcernError(result.writeConcernError));
376
380
  }
377
381
  }
382
+ exports.mergeBatchResults = mergeBatchResults;
378
383
  function executeCommands(bulkOperation, options, callback) {
379
384
  if (bulkOperation.s.batches.length === 0) {
380
385
  return callback(undefined, new BulkWriteResult(bulkOperation.s.bulkResult));
@@ -399,7 +404,7 @@ function executeCommands(bulkOperation, options, callback) {
399
404
  // Execute the next command in line
400
405
  executeCommands(bulkOperation, options, callback);
401
406
  }
402
- const finalOptions = utils_1.resolveOptions(bulkOperation, {
407
+ const finalOptions = (0, utils_1.resolveOptions)(bulkOperation, {
403
408
  ...options,
404
409
  ordered: bulkOperation.isOrdered
405
410
  });
@@ -429,13 +434,13 @@ function executeCommands(bulkOperation, options, callback) {
429
434
  }
430
435
  try {
431
436
  if (isInsertBatch(batch)) {
432
- execute_operation_1.executeOperation(bulkOperation.s.topology, new insert_1.InsertOperation(bulkOperation.s.namespace, batch.operations, finalOptions), resultHandler);
437
+ (0, execute_operation_1.executeOperation)(bulkOperation.s.topology, new insert_1.InsertOperation(bulkOperation.s.namespace, batch.operations, finalOptions), resultHandler);
433
438
  }
434
439
  else if (isUpdateBatch(batch)) {
435
- execute_operation_1.executeOperation(bulkOperation.s.topology, new update_1.UpdateOperation(bulkOperation.s.namespace, batch.operations, finalOptions), resultHandler);
440
+ (0, execute_operation_1.executeOperation)(bulkOperation.s.topology, new update_1.UpdateOperation(bulkOperation.s.namespace, batch.operations, finalOptions), resultHandler);
436
441
  }
437
442
  else if (isDeleteBatch(batch)) {
438
- execute_operation_1.executeOperation(bulkOperation.s.topology, new delete_1.DeleteOperation(bulkOperation.s.namespace, batch.operations, finalOptions), resultHandler);
443
+ (0, execute_operation_1.executeOperation)(bulkOperation.s.topology, new delete_1.DeleteOperation(bulkOperation.s.namespace, batch.operations, finalOptions), resultHandler);
439
444
  }
440
445
  }
441
446
  catch (err) {
@@ -525,36 +530,36 @@ class FindOperators {
525
530
  /** Add a multiple update operation to the bulk operation */
526
531
  update(updateDocument) {
527
532
  const currentOp = buildCurrentOp(this.bulkOperation);
528
- return this.bulkOperation.addToOperationsList(exports.BatchType.UPDATE, update_1.makeUpdateStatement(currentOp.selector, updateDocument, {
533
+ return this.bulkOperation.addToOperationsList(exports.BatchType.UPDATE, (0, update_1.makeUpdateStatement)(currentOp.selector, updateDocument, {
529
534
  ...currentOp,
530
535
  multi: true
531
536
  }));
532
537
  }
533
538
  /** Add a single update operation to the bulk operation */
534
539
  updateOne(updateDocument) {
535
- if (!utils_1.hasAtomicOperators(updateDocument)) {
540
+ if (!(0, utils_1.hasAtomicOperators)(updateDocument)) {
536
541
  throw new error_1.MongoInvalidArgumentError('Update document requires atomic operators');
537
542
  }
538
543
  const currentOp = buildCurrentOp(this.bulkOperation);
539
- return this.bulkOperation.addToOperationsList(exports.BatchType.UPDATE, update_1.makeUpdateStatement(currentOp.selector, updateDocument, { ...currentOp, multi: false }));
544
+ return this.bulkOperation.addToOperationsList(exports.BatchType.UPDATE, (0, update_1.makeUpdateStatement)(currentOp.selector, updateDocument, { ...currentOp, multi: false }));
540
545
  }
541
546
  /** Add a replace one operation to the bulk operation */
542
547
  replaceOne(replacement) {
543
- if (utils_1.hasAtomicOperators(replacement)) {
548
+ if ((0, utils_1.hasAtomicOperators)(replacement)) {
544
549
  throw new error_1.MongoInvalidArgumentError('Replacement document must not use atomic operators');
545
550
  }
546
551
  const currentOp = buildCurrentOp(this.bulkOperation);
547
- return this.bulkOperation.addToOperationsList(exports.BatchType.UPDATE, update_1.makeUpdateStatement(currentOp.selector, replacement, { ...currentOp, multi: false }));
552
+ return this.bulkOperation.addToOperationsList(exports.BatchType.UPDATE, (0, update_1.makeUpdateStatement)(currentOp.selector, replacement, { ...currentOp, multi: false }));
548
553
  }
549
554
  /** Add a delete one operation to the bulk operation */
550
555
  deleteOne() {
551
556
  const currentOp = buildCurrentOp(this.bulkOperation);
552
- return this.bulkOperation.addToOperationsList(exports.BatchType.DELETE, delete_1.makeDeleteStatement(currentOp.selector, { ...currentOp, limit: 1 }));
557
+ return this.bulkOperation.addToOperationsList(exports.BatchType.DELETE, (0, delete_1.makeDeleteStatement)(currentOp.selector, { ...currentOp, limit: 1 }));
553
558
  }
554
559
  /** Add a delete many operation to the bulk operation */
555
560
  delete() {
556
561
  const currentOp = buildCurrentOp(this.bulkOperation);
557
- return this.bulkOperation.addToOperationsList(exports.BatchType.DELETE, delete_1.makeDeleteStatement(currentOp.selector, { ...currentOp, limit: 0 }));
562
+ return this.bulkOperation.addToOperationsList(exports.BatchType.DELETE, (0, delete_1.makeDeleteStatement)(currentOp.selector, { ...currentOp, limit: 0 }));
558
563
  }
559
564
  /** Upsert modifier for update bulk operation, noting that this operation is an upsert. */
560
565
  upsert() {
@@ -591,7 +596,7 @@ class BulkOperationBase {
591
596
  constructor(collection, options, isOrdered) {
592
597
  // determine whether bulkOperation is ordered or unordered
593
598
  this.isOrdered = isOrdered;
594
- const topology = utils_1.getTopology(collection);
599
+ const topology = (0, utils_1.getTopology)(collection);
595
600
  options = options == null ? {} : options;
596
601
  // TODO Bring from driver information in isMaster
597
602
  // Get the namespace for the write operations
@@ -616,7 +621,7 @@ class BulkOperationBase {
616
621
  const maxKeySize = (maxWriteBatchSize - 1).toString(10).length + 2;
617
622
  // Final options for retryable writes
618
623
  let finalOptions = Object.assign({}, options);
619
- finalOptions = utils_1.applyRetryableWrites(finalOptions, collection.s.db);
624
+ finalOptions = (0, utils_1.applyRetryableWrites)(finalOptions, collection.s.db);
620
625
  // Final results
621
626
  const bulkResult = {
622
627
  ok: 1,
@@ -659,7 +664,7 @@ class BulkOperationBase {
659
664
  // Options
660
665
  options: finalOptions,
661
666
  // BSON options
662
- bsonOptions: bson_1.resolveBSONOptions(options),
667
+ bsonOptions: (0, bson_1.resolveBSONOptions)(options),
663
668
  // Current operation
664
669
  currentOp,
665
670
  // Executed
@@ -763,8 +768,8 @@ class BulkOperationBase {
763
768
  if ('q' in op.replaceOne) {
764
769
  throw new error_1.MongoInvalidArgumentError('Raw operations are not allowed');
765
770
  }
766
- const updateStatement = update_1.makeUpdateStatement(op.replaceOne.filter, op.replaceOne.replacement, { ...op.replaceOne, multi: false });
767
- if (utils_1.hasAtomicOperators(updateStatement.u)) {
771
+ const updateStatement = (0, update_1.makeUpdateStatement)(op.replaceOne.filter, op.replaceOne.replacement, { ...op.replaceOne, multi: false });
772
+ if ((0, utils_1.hasAtomicOperators)(updateStatement.u)) {
768
773
  throw new error_1.MongoInvalidArgumentError('Replacement document must not use atomic operators');
769
774
  }
770
775
  return this.addToOperationsList(exports.BatchType.UPDATE, updateStatement);
@@ -773,11 +778,11 @@ class BulkOperationBase {
773
778
  if ('q' in op.updateOne) {
774
779
  throw new error_1.MongoInvalidArgumentError('Raw operations are not allowed');
775
780
  }
776
- const updateStatement = update_1.makeUpdateStatement(op.updateOne.filter, op.updateOne.update, {
781
+ const updateStatement = (0, update_1.makeUpdateStatement)(op.updateOne.filter, op.updateOne.update, {
777
782
  ...op.updateOne,
778
783
  multi: false
779
784
  });
780
- if (!utils_1.hasAtomicOperators(updateStatement.u)) {
785
+ if (!(0, utils_1.hasAtomicOperators)(updateStatement.u)) {
781
786
  throw new error_1.MongoInvalidArgumentError('Update document requires atomic operators');
782
787
  }
783
788
  return this.addToOperationsList(exports.BatchType.UPDATE, updateStatement);
@@ -786,11 +791,11 @@ class BulkOperationBase {
786
791
  if ('q' in op.updateMany) {
787
792
  throw new error_1.MongoInvalidArgumentError('Raw operations are not allowed');
788
793
  }
789
- const updateStatement = update_1.makeUpdateStatement(op.updateMany.filter, op.updateMany.update, {
794
+ const updateStatement = (0, update_1.makeUpdateStatement)(op.updateMany.filter, op.updateMany.update, {
790
795
  ...op.updateMany,
791
796
  multi: true
792
797
  });
793
- if (!utils_1.hasAtomicOperators(updateStatement.u)) {
798
+ if (!(0, utils_1.hasAtomicOperators)(updateStatement.u)) {
794
799
  throw new error_1.MongoInvalidArgumentError('Update document requires atomic operators');
795
800
  }
796
801
  return this.addToOperationsList(exports.BatchType.UPDATE, updateStatement);
@@ -800,13 +805,13 @@ class BulkOperationBase {
800
805
  if ('q' in op.deleteOne) {
801
806
  throw new error_1.MongoInvalidArgumentError('Raw operations are not allowed');
802
807
  }
803
- return this.addToOperationsList(exports.BatchType.DELETE, delete_1.makeDeleteStatement(op.deleteOne.filter, { ...op.deleteOne, limit: 1 }));
808
+ return this.addToOperationsList(exports.BatchType.DELETE, (0, delete_1.makeDeleteStatement)(op.deleteOne.filter, { ...op.deleteOne, limit: 1 }));
804
809
  }
805
810
  if ('deleteMany' in op) {
806
811
  if ('q' in op.deleteMany) {
807
812
  throw new error_1.MongoInvalidArgumentError('Raw operations are not allowed');
808
813
  }
809
- return this.addToOperationsList(exports.BatchType.DELETE, delete_1.makeDeleteStatement(op.deleteMany.filter, { ...op.deleteMany, limit: 0 }));
814
+ return this.addToOperationsList(exports.BatchType.DELETE, (0, delete_1.makeDeleteStatement)(op.deleteMany.filter, { ...op.deleteMany, limit: 0 }));
810
815
  }
811
816
  // otherwise an unknown operation was provided
812
817
  throw new error_1.MongoInvalidArgumentError('bulkWrite only supports insertOne, updateOne, updateMany, deleteOne, deleteMany');
@@ -833,7 +838,6 @@ class BulkOperationBase {
833
838
  }
834
839
  return batches;
835
840
  }
836
- /** An internal helper method. Do not invoke directly. Will be going away in the future */
837
841
  execute(options, callback) {
838
842
  if (typeof options === 'function')
839
843
  (callback = options), (options = {});
@@ -865,7 +869,7 @@ class BulkOperationBase {
865
869
  }
866
870
  this.s.executed = true;
867
871
  const finalOptions = { ...this.s.options, ...options };
868
- return utils_1.executeLegacyOperation(this.s.topology, executeCommands, [this, finalOptions, callback]);
872
+ return (0, utils_1.executeLegacyOperation)(this.s.topology, executeCommands, [this, finalOptions, callback]);
869
873
  }
870
874
  /**
871
875
  * Handles the write error before executing commands
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/bulk/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/bulk/common.ts"],"names":[],"mappings":"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"}