mongodb 6.9.0 → 6.10.0-dev.20241024.sha.5c4355ad

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 (136) hide show
  1. package/lib/beta.d.ts +411 -16
  2. package/lib/bson.js +1 -0
  3. package/lib/bson.js.map +1 -1
  4. package/lib/bulk/common.js +60 -71
  5. package/lib/bulk/common.js.map +1 -1
  6. package/lib/bulk/unordered.js +3 -3
  7. package/lib/bulk/unordered.js.map +1 -1
  8. package/lib/change_stream.js +3 -2
  9. package/lib/change_stream.js.map +1 -1
  10. package/lib/cmap/auth/mongo_credentials.js +5 -8
  11. package/lib/cmap/auth/mongo_credentials.js.map +1 -1
  12. package/lib/cmap/auth/mongodb_aws.js +1 -1
  13. package/lib/cmap/auth/mongodb_aws.js.map +1 -1
  14. package/lib/cmap/auth/mongodb_oidc/callback_workflow.js.map +1 -1
  15. package/lib/cmap/auth/mongodb_oidc/command_builders.js +1 -1
  16. package/lib/cmap/auth/mongodb_oidc/command_builders.js.map +1 -1
  17. package/lib/cmap/auth/mongodb_oidc/human_callback_workflow.js +1 -1
  18. package/lib/cmap/auth/mongodb_oidc/human_callback_workflow.js.map +1 -1
  19. package/lib/cmap/auth/mongodb_oidc/machine_workflow.js.map +1 -1
  20. package/lib/cmap/auth/mongodb_oidc.js.map +1 -1
  21. package/lib/cmap/command_monitoring_events.js +10 -1
  22. package/lib/cmap/command_monitoring_events.js.map +1 -1
  23. package/lib/cmap/commands.js +50 -18
  24. package/lib/cmap/commands.js.map +1 -1
  25. package/lib/cmap/connection.js +9 -2
  26. package/lib/cmap/connection.js.map +1 -1
  27. package/lib/cmap/wire_protocol/constants.js +2 -2
  28. package/lib/cmap/wire_protocol/on_demand/document.js.map +1 -1
  29. package/lib/cmap/wire_protocol/responses.js +26 -1
  30. package/lib/cmap/wire_protocol/responses.js.map +1 -1
  31. package/lib/connection_string.js +1 -7
  32. package/lib/connection_string.js.map +1 -1
  33. package/lib/cursor/aggregation_cursor.js.map +1 -1
  34. package/lib/cursor/client_bulk_write_cursor.js +52 -0
  35. package/lib/cursor/client_bulk_write_cursor.js.map +1 -0
  36. package/lib/cursor/find_cursor.js.map +1 -1
  37. package/lib/db.js +1 -1
  38. package/lib/error.js +83 -10
  39. package/lib/error.js.map +1 -1
  40. package/lib/explain.js +6 -6
  41. package/lib/explain.js.map +1 -1
  42. package/lib/index.js +6 -3
  43. package/lib/index.js.map +1 -1
  44. package/lib/mongo_client.js +14 -0
  45. package/lib/mongo_client.js.map +1 -1
  46. package/lib/mongo_client_auth_providers.js +6 -2
  47. package/lib/mongo_client_auth_providers.js.map +1 -1
  48. package/lib/mongo_types.js.map +1 -1
  49. package/lib/operations/aggregate.js.map +1 -1
  50. package/lib/operations/client_bulk_write/client_bulk_write.js +83 -0
  51. package/lib/operations/client_bulk_write/client_bulk_write.js.map +1 -0
  52. package/lib/operations/client_bulk_write/command_builder.js +154 -19
  53. package/lib/operations/client_bulk_write/command_builder.js.map +1 -1
  54. package/lib/operations/client_bulk_write/executor.js +109 -0
  55. package/lib/operations/client_bulk_write/executor.js.map +1 -0
  56. package/lib/operations/client_bulk_write/results_merger.js +204 -0
  57. package/lib/operations/client_bulk_write/results_merger.js.map +1 -0
  58. package/lib/operations/execute_operation.js +7 -0
  59. package/lib/operations/execute_operation.js.map +1 -1
  60. package/lib/operations/find.js.map +1 -1
  61. package/lib/operations/operation.js +5 -1
  62. package/lib/operations/operation.js.map +1 -1
  63. package/lib/operations/search_indexes/create.js.map +1 -1
  64. package/lib/operations/search_indexes/drop.js.map +1 -1
  65. package/lib/operations/search_indexes/update.js.map +1 -1
  66. package/lib/read_concern.js +1 -1
  67. package/lib/sdam/server.js +2 -1
  68. package/lib/sdam/server.js.map +1 -1
  69. package/lib/sdam/server_description.js +5 -2
  70. package/lib/sdam/server_description.js.map +1 -1
  71. package/lib/sdam/server_selection.js +5 -2
  72. package/lib/sdam/server_selection.js.map +1 -1
  73. package/lib/sdam/srv_polling.js +5 -1
  74. package/lib/sdam/srv_polling.js.map +1 -1
  75. package/lib/sdam/topology_description.js.map +1 -1
  76. package/lib/sessions.js +9 -2
  77. package/lib/sessions.js.map +1 -1
  78. package/lib/utils.js +30 -11
  79. package/lib/utils.js.map +1 -1
  80. package/lib/write_concern.js.map +1 -1
  81. package/mongodb.d.ts +411 -16
  82. package/package.json +2 -2
  83. package/src/beta.ts +1 -1
  84. package/src/bson.ts +3 -0
  85. package/src/bulk/common.ts +80 -120
  86. package/src/bulk/unordered.ts +3 -4
  87. package/src/change_stream.ts +5 -2
  88. package/src/cmap/auth/mongo_credentials.ts +5 -9
  89. package/src/cmap/auth/mongodb_aws.ts +1 -1
  90. package/src/cmap/auth/mongodb_oidc/callback_workflow.ts +1 -1
  91. package/src/cmap/auth/mongodb_oidc/command_builders.ts +1 -2
  92. package/src/cmap/auth/mongodb_oidc/human_callback_workflow.ts +1 -2
  93. package/src/cmap/auth/mongodb_oidc/machine_workflow.ts +1 -1
  94. package/src/cmap/auth/mongodb_oidc.ts +1 -2
  95. package/src/cmap/command_monitoring_events.ts +16 -2
  96. package/src/cmap/commands.ts +71 -25
  97. package/src/cmap/connection.ts +17 -4
  98. package/src/cmap/handshake/client_metadata.ts +1 -1
  99. package/src/cmap/wire_protocol/constants.ts +2 -2
  100. package/src/cmap/wire_protocol/on_demand/document.ts +1 -2
  101. package/src/cmap/wire_protocol/responses.ts +31 -2
  102. package/src/connection_string.ts +2 -9
  103. package/src/cursor/aggregation_cursor.ts +2 -2
  104. package/src/cursor/client_bulk_write_cursor.ts +79 -0
  105. package/src/cursor/find_cursor.ts +2 -2
  106. package/src/db.ts +1 -1
  107. package/src/error.ts +105 -9
  108. package/src/explain.ts +47 -11
  109. package/src/index.ts +26 -1
  110. package/src/mongo_client.ts +30 -2
  111. package/src/mongo_client_auth_providers.ts +8 -2
  112. package/src/mongo_types.ts +2 -1
  113. package/src/operations/aggregate.ts +9 -1
  114. package/src/operations/client_bulk_write/client_bulk_write.ts +107 -0
  115. package/src/operations/client_bulk_write/command_builder.ts +216 -30
  116. package/src/operations/client_bulk_write/common.ts +148 -23
  117. package/src/operations/client_bulk_write/executor.ts +137 -0
  118. package/src/operations/client_bulk_write/results_merger.ts +260 -0
  119. package/src/operations/execute_operation.ts +8 -0
  120. package/src/operations/find.ts +8 -1
  121. package/src/operations/operation.ts +6 -1
  122. package/src/operations/search_indexes/create.ts +1 -2
  123. package/src/operations/search_indexes/drop.ts +1 -2
  124. package/src/operations/search_indexes/update.ts +1 -2
  125. package/src/read_concern.ts +1 -1
  126. package/src/sdam/server.ts +2 -1
  127. package/src/sdam/server_description.ts +11 -2
  128. package/src/sdam/server_selection.ts +5 -2
  129. package/src/sdam/srv_polling.ts +5 -2
  130. package/src/sdam/topology_description.ts +0 -1
  131. package/src/sessions.ts +16 -2
  132. package/src/utils.ts +45 -12
  133. package/src/write_concern.ts +4 -1
  134. package/lib/cmap/auth/mongocr.js +0 -35
  135. package/lib/cmap/auth/mongocr.js.map +0 -1
  136. package/src/cmap/auth/mongocr.ts +0 -38
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,mCAAgC;AAkF9B,sFAlFO,aAAK,OAkFP;AAjFP,4CAAsD;AA+FpD,qGA/FO,8BAAoB,OA+FP;AA9FtB,gDAA0D;AAgGxD,uGAhGO,kCAAsB,OAgGP;AA/FxB,mDAA+C;AAkF7C,6FAlFO,4BAAY,OAkFP;AAjFd,6CAA0C;AAmFxC,2FAnFO,uBAAU,OAmFP;AAlFZ,8DAA0D;AA2ExD,+FA3EO,gCAAc,OA2EP;AA1EhB,oEAAgE;AA6E9D,kGA7EO,sCAAiB,OA6EP;AA5EnB,sDAAkD;AAkFhD,2FAlFO,wBAAU,OAkFP;AAjFZ,8EAAyE;AAqFvE,sGArFO,+CAAqB,OAqFP;AApFvB,sEAAiE;AAqF/D,kGArFO,uCAAiB,OAqFP;AAnFnB,6BAA0B;AA6ExB,mFA7EO,OAAE,OA6EP;AA5EJ,qCAAwC;AA8EtC,6FA9EO,qBAAY,OA8EP;AA7Ed,gDAA2D;AA8EzD,uGA9EO,iCAAsB,OA8EP;AA7ExB,4CAA0D;AA8ExD,wGA9EO,gCAAuB,OA8EP;AA7EzB,iDAA6C;AAgF3C,4FAhFO,0BAAW,OAgFP;AA/Eb,+CAAkD;AAoEhD,kGApEO,+BAAiB,OAoEP;AAnEnB,yCAA2C;AAqEzC,8FArEO,wBAAa,OAqEP;AAnEf,cAAc;AACd,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,+BAgBgB;AAfd,8FAAA,MAAM,OAAA;AACN,kGAAA,UAAU,OAAA;AACV,kGAAA,UAAU,OAAA;AACV,gGAAA,QAAQ,OAAA;AACR,4FAAA,IAAI,OAAA;AACJ,6FAAA,KAAK,OAAA;AACL,kGAAA,UAAU,OAAA;AACV,8FAAA,MAAM,OAAA;AACN,6FAAA,KAAK,OAAA;AACL,4FAAA,IAAI,OAAA;AACJ,8FAAA,MAAM,OAAA;AACN,8FAAA,MAAM,OAAA;AACN,gGAAA,QAAQ,OAAA;AACR,iGAAA,SAAS,OAAA;AACT,4FAAA,IAAI,OAAA;AAEN,wCAA6F;AAA3C,6GAAA,mBAAmB,OAAA;AACrE,gFAA8E;AAArE,qHAAA,gBAAgB,OAAA;AACzB,sEAAmE;AAA1D,0HAAA,kBAAkB,OAAA;AAC3B,iCAoCiB;AAnCf,sGAAA,aAAa,OAAA;AACb,sGAAA,aAAa,OAAA;AACb,wGAAA,eAAe,OAAA;AACf,mHAAA,0BAA0B,OAAA;AAC1B,+GAAA,sBAAsB,OAAA;AACtB,gHAAA,uBAAuB,OAAA;AACvB,kHAAA,yBAAyB,OAAA;AACzB,8GAAA,qBAAqB,OAAA;AACrB,gHAAA,uBAAuB,OAAA;AACvB,yGAAA,gBAAgB,OAAA;AAChB,mGAAA,UAAU,OAAA;AACV,iHAAA,wBAAwB,OAAA;AACxB,sGAAA,aAAa,OAAA;AACb,8GAAA,qBAAqB,OAAA;AACrB,+GAAA,sBAAsB,OAAA;AACtB,kHAAA,yBAAyB,OAAA;AACzB,2GAAA,kBAAkB,OAAA;AAClB,qHAAA,4BAA4B,OAAA;AAC5B,oHAAA,2BAA2B,OAAA;AAC3B,0GAAA,iBAAiB,OAAA;AACjB,iHAAA,wBAAwB,OAAA;AACxB,+GAAA,sBAAsB,OAAA;AACtB,uGAAA,cAAc,OAAA;AACd,wGAAA,eAAe,OAAA;AACf,0GAAA,iBAAiB,OAAA;AACjB,+GAAA,sBAAsB,OAAA;AACtB,yGAAA,gBAAgB,OAAA;AAChB,kHAAA,yBAAyB,OAAA;AACzB,yGAAA,gBAAgB,OAAA;AAChB,iHAAA,wBAAwB,OAAA;AACxB,iHAAA,wBAAwB,OAAA;AACxB,8GAAA,qBAAqB,OAAA;AACrB,2HAAA,kCAAkC,OAAA;AAClC,+GAAA,sBAAsB,OAAA;AAGxB,6DAA4E;AAAnE,0IAAA,mCAAmC,OAAA;AAuB5C,QAAQ;AACR,wCAA0C;AAAjC,mGAAA,SAAS,OAAA;AAClB,0EAAoF;AAA3E,2HAAA,yBAAyB,OAAA;AAClC,6CAAiE;AAAxD,qHAAA,2BAA2B,OAAA;AACpC,mDAAsD;AAA7C,0GAAA,aAAa,OAAA;AACtB,gEAA8D;AAArD,yGAAA,UAAU,OAAA;AACnB,4DAAwD;AAA/C,+GAAA,YAAY,OAAA;AACrB,iCAA0C;AAAjC,wGAAA,eAAe,OAAA;AACxB,qCAA6C;AAApC,2GAAA,gBAAgB,OAAA;AACzB,+CAAkD;AAAzC,gHAAA,gBAAgB,OAAA;AACzB,gEAA8D;AAArD,iHAAA,cAAc,OAAA;AACvB,wEAAkE;AAAzD,qHAAA,cAAc,OAAA;AACvB,+CAAkD;AAAzC,gHAAA,gBAAgB,OAAA;AACzB,qDAAuD;AAA9C,qHAAA,kBAAkB,OAAA;AAC3B,wCAAyD;AAAhD,oGAAA,UAAU,OAAA;AAAE,sGAAA,YAAY,OAAA;AAEjC,iBAAiB;AACjB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAErB,SAAS;AACT,8EAI0C;AAHxC,+HAAA,kBAAkB,OAAA;AAClB,gIAAA,mBAAmB,OAAA;AACnB,kIAAA,qBAAqB,OAAA;AAEvB,wEAauC;AAZrC,kIAAA,wBAAwB,OAAA;AACxB,mIAAA,yBAAyB,OAAA;AACzB,uIAAA,6BAA6B,OAAA;AAC7B,wIAAA,8BAA8B,OAAA;AAC9B,+HAAA,qBAAqB,OAAA;AACrB,gIAAA,sBAAsB,OAAA;AACtB,oIAAA,0BAA0B,OAAA;AAC1B,mIAAA,yBAAyB,OAAA;AACzB,oIAAA,0BAA0B,OAAA;AAC1B,uIAAA,6BAA6B,OAAA;AAC7B,kIAAA,wBAAwB,OAAA;AACxB,8HAAA,oBAAoB,OAAA;AAEtB,wCAUuB;AATrB,2GAAA,iBAAiB,OAAA;AACjB,uHAAA,6BAA6B,OAAA;AAC7B,oHAAA,0BAA0B,OAAA;AAC1B,qHAAA,2BAA2B,OAAA;AAC3B,uHAAA,6BAA6B,OAAA;AAC7B,4GAAA,kBAAkB,OAAA;AAClB,6GAAA,mBAAmB,OAAA;AACnB,yHAAA,+BAA+B,OAAA;AAC/B,8GAAA,oBAAoB,OAAA;AAEtB,0EAMwC;AALtC,+HAAA,oBAAoB,OAAA;AACpB,qIAAA,0BAA0B,OAAA;AAC1B,sIAAA,2BAA2B,OAAA;AAC3B,wIAAA,6BAA6B,OAAA;AAC7B,wIAAA,6BAA6B,OAAA;AAE/B,kDAAqD;AAA5C,8GAAA,eAAe,OAAA;AAwExB,0DAOyC;AANvC,wHAAA,8BAA8B,OAAA;AAC9B,sHAAA,4BAA4B,OAAA;AAC5B,kIAAA,wCAAwC,OAAA;AACxC,yGAAA,eAAe,OAAA;AACf,wHAAA,8BAA8B,OAAA;AAC9B,iIAAA,uCAAuC,OAAA;AA4JzC,6EAAyE;AAAhE,uIAAA,wBAAwB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ const error_1 = require("./error");
13
13
  const mongo_client_auth_providers_1 = require("./mongo_client_auth_providers");
14
14
  const mongo_logger_1 = require("./mongo_logger");
15
15
  const mongo_types_1 = require("./mongo_types");
16
+ const executor_1 = require("./operations/client_bulk_write/executor");
16
17
  const execute_operation_1 = require("./operations/execute_operation");
17
18
  const run_command_1 = require("./operations/run_command");
18
19
  const read_preference_1 = require("./read_preference");
@@ -133,6 +134,19 @@ class MongoClient extends mongo_types_1.TypedEventEmitter {
133
134
  get bsonOptions() {
134
135
  return this.s.bsonOptions;
135
136
  }
137
+ /**
138
+ * Executes a client bulk write operation, available on server 8.0+.
139
+ * @param models - The client bulk write models.
140
+ * @param options - The client bulk write options.
141
+ * @returns A ClientBulkWriteResult for acknowledged writes and ok: 1 for unacknowledged writes.
142
+ */
143
+ async bulkWrite(models, options) {
144
+ if (this.autoEncrypter) {
145
+ throw new error_1.MongoInvalidArgumentError('MongoClient bulkWrite does not currently support automatic encryption.');
146
+ }
147
+ // We do not need schema type information past this point ("as any" is fine)
148
+ return await new executor_1.ClientBulkWriteExecutor(this, models, (0, utils_1.resolveOptions)(this, options)).execute();
149
+ }
136
150
  /**
137
151
  * Connect to MongoDB using a url
138
152
  *
@@ -1 +1 @@
1
- {"version":3,"file":"mongo_client.js","sourceRoot":"","sources":["../src/mongo_client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongo_client.js","sourceRoot":"","sources":["../src/mongo_client.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MongoClientAuthProviders = void 0;
4
4
  const gssapi_1 = require("./cmap/auth/gssapi");
5
- const mongocr_1 = require("./cmap/auth/mongocr");
6
5
  const mongodb_aws_1 = require("./cmap/auth/mongodb_aws");
7
6
  const mongodb_oidc_1 = require("./cmap/auth/mongodb_oidc");
8
7
  const automated_callback_workflow_1 = require("./cmap/auth/mongodb_oidc/automated_callback_workflow");
@@ -16,7 +15,12 @@ const error_1 = require("./error");
16
15
  /** @internal */
17
16
  const AUTH_PROVIDERS = new Map([
18
17
  [providers_1.AuthMechanism.MONGODB_AWS, () => new mongodb_aws_1.MongoDBAWS()],
19
- [providers_1.AuthMechanism.MONGODB_CR, () => new mongocr_1.MongoCR()],
18
+ [
19
+ providers_1.AuthMechanism.MONGODB_CR,
20
+ () => {
21
+ throw new error_1.MongoInvalidArgumentError('MONGODB-CR is no longer a supported auth mechanism in MongoDB 4.0+');
22
+ }
23
+ ],
20
24
  [providers_1.AuthMechanism.MONGODB_GSSAPI, () => new gssapi_1.GSSAPI()],
21
25
  [providers_1.AuthMechanism.MONGODB_OIDC, (workflow) => new mongodb_oidc_1.MongoDBOIDC(workflow)],
22
26
  [providers_1.AuthMechanism.MONGODB_PLAIN, () => new plain_1.Plain()],
@@ -1 +1 @@
1
- {"version":3,"file":"mongo_client_auth_providers.js","sourceRoot":"","sources":["../src/mongo_client_auth_providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongo_client_auth_providers.js","sourceRoot":"","sources":["../src/mongo_client_auth_providers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mongo_types.js","sourceRoot":"","sources":["../src/mongo_types.ts"],"names":[],"mappings":";;;AACA,mCAAsC;AActC,iDAQwB;AAkYxB;;;GAGG;AAEH,4EAA4E;AAC5E,MAAa,iBAAoD,SAAQ,qBAAY;IAKnF,gBAAgB;IAChB,UAAU,CACR,KAAwB,EACxB,GAAG,IAAkC;QAErC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,gBAAgB;IAChB,mBAAmB,CACjB,KAAwB,EACxB,UAAkB,EAClB,kBAAyC,EACzC,GAAG,IAAkC;QAErC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,sBAAsB,GAGc;gBACxC,UAAU,EAAE,UAAU;gBACtB,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gBAC9C,GAAG,IAAI,CAAC,CAAC,CAAC;aACX,CAAC;YACF,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IACD,gBAAgB;IAChB,iBAAiB,CACf,eAAwB,EACxB,KAAwB,EACxB,YAAoB,EACpB,qBAA8B,EAC9B,GAAG,IAAkC;QAErC,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,oBAAoB,GAGU;gBAClC,YAAY,EAAE,YAAY;gBAC1B,GAAG,IAAI,CAAC,CAAC,CAAC;aACX,CAAC;YACF,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,qCAAsB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;CACF;AAvDD,8CAuDC;AAED,cAAc;AACd,MAAa,iBAAkB,SAAQ,iBAAqC;CAAG;AAA/E,8CAA+E"}
1
+ {"version":3,"file":"mongo_types.js","sourceRoot":"","sources":["../src/mongo_types.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;AAgBtC,iDAQwB;AAkYxB;;;GAGG;AAEH,4EAA4E;AAC5E,MAAa,iBAAoD,SAAQ,qBAAY;IAKnF,gBAAgB;IAChB,UAAU,CACR,KAAwB,EACxB,GAAG,IAAkC;QAErC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,gBAAgB;IAChB,mBAAmB,CACjB,KAAwB,EACxB,UAAkB,EAClB,kBAAyC,EACzC,GAAG,IAAkC;QAErC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,sBAAsB,GAGc;gBACxC,UAAU,EAAE,UAAU;gBACtB,kBAAkB,EAAE,kBAAkB,IAAI,IAAI;gBAC9C,GAAG,IAAI,CAAC,CAAC,CAAC;aACX,CAAC;YACF,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IACD,gBAAgB;IAChB,iBAAiB,CACf,eAAwB,EACxB,KAAwB,EACxB,YAAoB,EACpB,qBAA8B,EAC9B,GAAG,IAAkC;QAErC,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,oBAAoB,GAGU;gBAClC,YAAY,EAAE,YAAY;gBAC1B,GAAG,IAAI,CAAC,CAAC,CAAC;aACX,CAAC;YACF,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,qCAAsB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;CACF;AAvDD,8CAuDC;AAED,cAAc;AACd,MAAa,iBAAkB,SAAQ,iBAAqC;CAAG;AAA/E,8CAA+E"}
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../src/operations/aggregate.ts"],"names":[],"mappings":";;;AACA,+DAA0F;AAC1F,oCAAqD;AAGrD,oCAAiE;AACjE,oDAAgD;AAChD,uCAAkG;AAClG,2CAA+D;AAE/D,gBAAgB;AAChB,4EAA4E;AAC/D,QAAA,uBAAuB,GAAG,CAAU,CAAC;AAClD,MAAM,0CAA0C,GAAG,CAAC,CAAC;AA0BrD,gBAAgB;AAChB,MAAa,kBAAmB,SAAQ,0BAAgC;IAMtE,YAAY,EAAoB,EAAE,QAAoB,EAAE,OAA0B;QAChF,KAAK,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAEhD,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAE9B,gGAAgG;QAChG,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,UAAU,IAAI,+BAAuB,CAAC;QAEvD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,qEAAqE;QACrE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,OAAO,OAAO,EAAE,GAAG,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjD,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACzC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,IAAI,iCAAyB,CACjC,wEAAwE,CACzE,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,EAAE,MAAM,IAAI,IAAI,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAClE,MAAM,IAAI,iCAAyB,CAAC,kCAAkC,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,IAAa,WAAW;QACtB,OAAO,WAAoB,CAAC;IAC9B,CAAC;IAED,IAAa,YAAY;QACvB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;IAC7B,CAAC;IAED,aAAa,CAAC,KAAe;QAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAEQ,KAAK,CAAC,OAAO,CACpB,MAAc,EACd,OAAkC;QAElC,MAAM,OAAO,GAAqB,IAAI,CAAC,OAAO,CAAC;QAC/C,MAAM,iBAAiB,GAAG,IAAA,sBAAc,EAAC,MAAM,CAAC,CAAC;QACjD,MAAM,OAAO,GAAa,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE9E,IAAI,IAAI,CAAC,aAAa,IAAI,iBAAiB,GAAG,0CAA0C,EAAE,CAAC;YACzF,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5C,4BAAY,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,OAAO,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;YAC9C,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;QACtE,CAAC;QAED,IAAI,OAAO,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC9C,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QAC9C,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC9B,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QAC5B,CAAC;QAED,iEAAiE;QACjE,gDAAgD;QAChD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QACpC,CAAC;QAED,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7C,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QAC/C,CAAC;QAED,OAAO,MAAM,KAAK,CAAC,cAAc,CAC/B,MAAM,EACN,OAAO,EACP,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mCAAuB,CAAC,CAAC,CAAC,0BAAc,CACxD,CAAC;IACJ,CAAC;CACF;AA3GD,gDA2GC;AAED,IAAA,yBAAa,EAAC,kBAAkB,EAAE;IAChC,kBAAM,CAAC,cAAc;IACrB,kBAAM,CAAC,SAAS;IAChB,kBAAM,CAAC,WAAW;IAClB,kBAAM,CAAC,eAAe;CACvB,CAAC,CAAC"}
1
+ {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../src/operations/aggregate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClientBulkWriteOperation = void 0;
4
+ const beta_1 = require("../../beta");
5
+ const responses_1 = require("../../cmap/wire_protocol/responses");
6
+ const utils_1 = require("../../utils");
7
+ const command_1 = require("../command");
8
+ const operation_1 = require("../operation");
9
+ /**
10
+ * Executes a single client bulk write operation within a potential batch.
11
+ * @internal
12
+ */
13
+ class ClientBulkWriteOperation extends command_1.CommandOperation {
14
+ get commandName() {
15
+ return 'bulkWrite';
16
+ }
17
+ constructor(commandBuilder, options) {
18
+ super(undefined, options);
19
+ this.commandBuilder = commandBuilder;
20
+ this.options = options;
21
+ this.ns = new utils_1.MongoDBNamespace('admin', '$cmd');
22
+ }
23
+ resetBatch() {
24
+ return this.commandBuilder.resetBatch();
25
+ }
26
+ get canRetryWrite() {
27
+ return this.commandBuilder.isBatchRetryable;
28
+ }
29
+ /**
30
+ * Execute the command. Superclass will handle write concern, etc.
31
+ * @param server - The server.
32
+ * @param session - The session.
33
+ * @returns The response.
34
+ */
35
+ async execute(server, session) {
36
+ let command;
37
+ if (server.description.type === beta_1.ServerType.LoadBalancer) {
38
+ if (session) {
39
+ let connection;
40
+ if (!session.pinnedConnection) {
41
+ // Checkout a connection to build the command.
42
+ connection = await server.pool.checkOut();
43
+ // Pin the connection to the session so it get used to execute the command and we do not
44
+ // perform a double check-in/check-out.
45
+ session.pin(connection);
46
+ }
47
+ else {
48
+ connection = session.pinnedConnection;
49
+ }
50
+ command = this.commandBuilder.buildBatch(connection.hello?.maxMessageSizeBytes, connection.hello?.maxWriteBatchSize, connection.hello?.maxBsonObjectSize);
51
+ }
52
+ else {
53
+ throw new beta_1.MongoClientBulkWriteExecutionError('Session provided to the client bulk write operation must be present.');
54
+ }
55
+ }
56
+ else {
57
+ // At this point we have a server and the auto connect code has already
58
+ // run in executeOperation, so the server description will be populated.
59
+ // We can use that to build the command.
60
+ if (!server.description.maxWriteBatchSize ||
61
+ !server.description.maxMessageSizeBytes ||
62
+ !server.description.maxBsonObjectSize) {
63
+ throw new beta_1.MongoClientBulkWriteExecutionError('In order to execute a client bulk write, both maxWriteBatchSize, maxMessageSizeBytes and maxBsonObjectSize must be provided by the servers hello response.');
64
+ }
65
+ command = this.commandBuilder.buildBatch(server.description.maxMessageSizeBytes, server.description.maxWriteBatchSize, server.description.maxBsonObjectSize);
66
+ }
67
+ // Check after the batch is built if we cannot retry it and override the option.
68
+ if (!this.canRetryWrite) {
69
+ this.options.willRetryWrite = false;
70
+ }
71
+ return await super.executeCommand(server, session, command, responses_1.ClientBulkWriteCursorResponse);
72
+ }
73
+ }
74
+ exports.ClientBulkWriteOperation = ClientBulkWriteOperation;
75
+ // Skipping the collation as it goes on the individual ops.
76
+ (0, operation_1.defineAspects)(ClientBulkWriteOperation, [
77
+ operation_1.Aspect.WRITE_OPERATION,
78
+ operation_1.Aspect.SKIP_COLLATION,
79
+ operation_1.Aspect.CURSOR_CREATING,
80
+ operation_1.Aspect.RETRYABLE,
81
+ operation_1.Aspect.COMMAND_BATCHING
82
+ ]);
83
+ //# sourceMappingURL=client_bulk_write.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client_bulk_write.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/client_bulk_write.ts"],"names":[],"mappings":";;;AAAA,qCAA4E;AAC5E,kEAAmF;AAGnF,uCAA+C;AAC/C,wCAA8C;AAC9C,4CAAqD;AAIrD;;;GAGG;AACH,MAAa,wBAAyB,SAAQ,0BAA+C;IAI3F,IAAa,WAAW;QACtB,OAAO,WAAoB,CAAC;IAC9B,CAAC;IAED,YAAY,cAA6C,EAAE,OAA+B;QACxF,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE,GAAG,IAAI,wBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IAEQ,UAAU;QACjB,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,IAAa,aAAa;QACxB,OAAO,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACM,KAAK,CAAC,OAAO,CACpB,MAAc,EACd,OAAkC;QAElC,IAAI,OAAO,CAAC;QAEZ,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,iBAAU,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,UAAU,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBAC9B,8CAA8C;oBAC9C,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC1C,wFAAwF;oBACxF,uCAAuC;oBACvC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACN,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC;gBACxC,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CACtC,UAAU,CAAC,KAAK,EAAE,mBAAmB,EACrC,UAAU,CAAC,KAAK,EAAE,iBAAiB,EACnC,UAAU,CAAC,KAAK,EAAE,iBAAiB,CACpC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,yCAAkC,CAC1C,sEAAsE,CACvE,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,uEAAuE;YACvE,wEAAwE;YACxE,wCAAwC;YACxC,IACE,CAAC,MAAM,CAAC,WAAW,CAAC,iBAAiB;gBACrC,CAAC,MAAM,CAAC,WAAW,CAAC,mBAAmB;gBACvC,CAAC,MAAM,CAAC,WAAW,CAAC,iBAAiB,EACrC,CAAC;gBACD,MAAM,IAAI,yCAAkC,CAC1C,4JAA4J,CAC7J,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CACtC,MAAM,CAAC,WAAW,CAAC,mBAAmB,EACtC,MAAM,CAAC,WAAW,CAAC,iBAAiB,EACpC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CACrC,CAAC;QACJ,CAAC;QAED,gFAAgF;QAChF,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,KAAK,CAAC;QACtC,CAAC;QACD,OAAO,MAAM,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,yCAA6B,CAAC,CAAC;IAC7F,CAAC;CACF;AAnFD,4DAmFC;AAED,2DAA2D;AAC3D,IAAA,yBAAa,EAAC,wBAAwB,EAAE;IACtC,kBAAM,CAAC,eAAe;IACtB,kBAAM,CAAC,cAAc;IACrB,kBAAM,CAAC,eAAe;IACtB,kBAAM,CAAC,SAAS;IAChB,kBAAM,CAAC,gBAAgB;CACxB,CAAC,CAAC"}
@@ -2,16 +2,28 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildReplaceOneOperation = exports.buildUpdateManyOperation = exports.buildUpdateOneOperation = exports.buildDeleteManyOperation = exports.buildDeleteOneOperation = exports.buildInsertOneOperation = exports.ClientBulkWriteCommandBuilder = void 0;
4
4
  exports.buildOperation = buildOperation;
5
+ const bson_1 = require("../../bson");
5
6
  const commands_1 = require("../../cmap/commands");
7
+ const error_1 = require("../../error");
8
+ const utils_1 = require("../../utils");
9
+ /**
10
+ * The bytes overhead for the extra fields added post command generation.
11
+ */
12
+ const MESSAGE_OVERHEAD_BYTES = 1000;
6
13
  /** @internal */
7
14
  class ClientBulkWriteCommandBuilder {
8
15
  /**
9
16
  * Create the command builder.
10
17
  * @param models - The client write models.
11
18
  */
12
- constructor(models, options) {
19
+ constructor(models, options, pkFactory) {
13
20
  this.models = models;
14
21
  this.options = options;
22
+ this.pkFactory = pkFactory ?? utils_1.DEFAULT_PK_FACTORY;
23
+ this.currentModelIndex = 0;
24
+ this.previousModelIndex = 0;
25
+ this.lastOperations = [];
26
+ this.isBatchRetryable = true;
15
27
  }
16
28
  /**
17
29
  * Gets the errorsOnly value for the command, which is the inverse of the
@@ -24,33 +36,122 @@ class ClientBulkWriteCommandBuilder {
24
36
  return true;
25
37
  }
26
38
  /**
27
- * Build the bulk write commands from the models.
39
+ * Determines if there is another batch to process.
40
+ * @returns True if not all batches have been built.
28
41
  */
29
- buildCommands() {
30
- // Iterate the models to build the ops and nsInfo fields.
31
- const operations = [];
42
+ hasNextBatch() {
43
+ return this.currentModelIndex < this.models.length;
44
+ }
45
+ /**
46
+ * When we need to retry a command we need to set the current
47
+ * model index back to its previous value.
48
+ */
49
+ resetBatch() {
50
+ this.currentModelIndex = this.previousModelIndex;
51
+ return true;
52
+ }
53
+ /**
54
+ * Build a single batch of a client bulk write command.
55
+ * @param maxMessageSizeBytes - The max message size in bytes.
56
+ * @param maxWriteBatchSize - The max write batch size.
57
+ * @returns The client bulk write command.
58
+ */
59
+ buildBatch(maxMessageSizeBytes, maxWriteBatchSize, maxBsonObjectSize) {
60
+ // We start by assuming the batch has no multi-updates, so it is retryable
61
+ // until we find them.
62
+ this.isBatchRetryable = true;
63
+ let commandLength = 0;
32
64
  let currentNamespaceIndex = 0;
65
+ const command = this.baseCommand();
33
66
  const namespaces = new Map();
34
- for (const model of this.models) {
67
+ // In the case of retries we need to mark where we started this batch.
68
+ this.previousModelIndex = this.currentModelIndex;
69
+ while (this.currentModelIndex < this.models.length) {
70
+ const model = this.models[this.currentModelIndex];
35
71
  const ns = model.namespace;
36
- const index = namespaces.get(ns);
37
- if (index != null) {
38
- operations.push(buildOperation(model, index));
72
+ const nsIndex = namespaces.get(ns);
73
+ // Multi updates are not retryable.
74
+ if (model.name === 'deleteMany' || model.name === 'updateMany') {
75
+ this.isBatchRetryable = false;
76
+ }
77
+ if (nsIndex != null) {
78
+ // Build the operation and serialize it to get the bytes buffer.
79
+ const operation = buildOperation(model, nsIndex, this.pkFactory);
80
+ let operationBuffer;
81
+ try {
82
+ operationBuffer = bson_1.BSON.serialize(operation);
83
+ }
84
+ catch (cause) {
85
+ throw new error_1.MongoInvalidArgumentError(`Could not serialize operation to BSON`, { cause });
86
+ }
87
+ validateBufferSize('ops', operationBuffer, maxBsonObjectSize);
88
+ // Check if the operation buffer can fit in the command. If it can,
89
+ // then add the operation to the document sequence and increment the
90
+ // current length as long as the ops don't exceed the maxWriteBatchSize.
91
+ if (commandLength + operationBuffer.length < maxMessageSizeBytes &&
92
+ command.ops.documents.length < maxWriteBatchSize) {
93
+ // Pushing to the ops document sequence returns the total byte length of the document sequence.
94
+ commandLength = MESSAGE_OVERHEAD_BYTES + command.ops.push(operation, operationBuffer);
95
+ // Increment the builder's current model index.
96
+ this.currentModelIndex++;
97
+ }
98
+ else {
99
+ // The operation cannot fit in the current command and will need to
100
+ // go in the next batch. Exit the loop.
101
+ break;
102
+ }
39
103
  }
40
104
  else {
105
+ // The namespace is not already in the nsInfo so we will set it in the map, and
106
+ // construct our nsInfo and ops documents and buffers.
41
107
  namespaces.set(ns, currentNamespaceIndex);
42
- operations.push(buildOperation(model, currentNamespaceIndex));
43
- currentNamespaceIndex++;
108
+ const nsInfo = { ns: ns };
109
+ const operation = buildOperation(model, currentNamespaceIndex, this.pkFactory);
110
+ let nsInfoBuffer;
111
+ let operationBuffer;
112
+ try {
113
+ nsInfoBuffer = bson_1.BSON.serialize(nsInfo);
114
+ operationBuffer = bson_1.BSON.serialize(operation);
115
+ }
116
+ catch (cause) {
117
+ throw new error_1.MongoInvalidArgumentError(`Could not serialize ns info to BSON`, { cause });
118
+ }
119
+ validateBufferSize('nsInfo', nsInfoBuffer, maxBsonObjectSize);
120
+ validateBufferSize('ops', operationBuffer, maxBsonObjectSize);
121
+ // Check if the operation and nsInfo buffers can fit in the command. If they
122
+ // can, then add the operation and nsInfo to their respective document
123
+ // sequences and increment the current length as long as the ops don't exceed
124
+ // the maxWriteBatchSize.
125
+ if (commandLength + nsInfoBuffer.length + operationBuffer.length < maxMessageSizeBytes &&
126
+ command.ops.documents.length < maxWriteBatchSize) {
127
+ // Pushing to the ops document sequence returns the total byte length of the document sequence.
128
+ commandLength =
129
+ MESSAGE_OVERHEAD_BYTES +
130
+ command.nsInfo.push(nsInfo, nsInfoBuffer) +
131
+ command.ops.push(operation, operationBuffer);
132
+ // We've added a new namespace, increment the namespace index.
133
+ currentNamespaceIndex++;
134
+ // Increment the builder's current model index.
135
+ this.currentModelIndex++;
136
+ }
137
+ else {
138
+ // The operation cannot fit in the current command and will need to
139
+ // go in the next batch. Exit the loop.
140
+ break;
141
+ }
44
142
  }
45
143
  }
46
- const nsInfo = Array.from(namespaces.keys(), ns => ({ ns }));
47
- // The base command.
144
+ // Set the last operations and return the command.
145
+ this.lastOperations = command.ops.documents;
146
+ return command;
147
+ }
148
+ baseCommand() {
48
149
  const command = {
49
150
  bulkWrite: 1,
50
151
  errorsOnly: this.errorsOnly,
51
152
  ordered: this.options.ordered ?? true,
52
- ops: new commands_1.DocumentSequence(operations),
53
- nsInfo: new commands_1.DocumentSequence(nsInfo)
153
+ ops: new commands_1.DocumentSequence('ops'),
154
+ nsInfo: new commands_1.DocumentSequence('nsInfo')
54
155
  };
55
156
  // Add bypassDocumentValidation if it was present in the options.
56
157
  if (this.options.bypassDocumentValidation != null) {
@@ -60,21 +161,32 @@ class ClientBulkWriteCommandBuilder {
60
161
  if (this.options.let) {
61
162
  command.let = this.options.let;
62
163
  }
63
- return [command];
164
+ // we check for undefined specifically here to allow falsy values
165
+ // eslint-disable-next-line no-restricted-syntax
166
+ if (this.options.comment !== undefined) {
167
+ command.comment = this.options.comment;
168
+ }
169
+ return command;
64
170
  }
65
171
  }
66
172
  exports.ClientBulkWriteCommandBuilder = ClientBulkWriteCommandBuilder;
173
+ function validateBufferSize(name, buffer, maxBsonObjectSize) {
174
+ if (buffer.length > maxBsonObjectSize) {
175
+ throw new error_1.MongoInvalidArgumentError(`Client bulk write operation ${name} of length ${buffer.length} exceeds the max bson object size of ${maxBsonObjectSize}`);
176
+ }
177
+ }
67
178
  /**
68
179
  * Build the insert one operation.
69
180
  * @param model - The insert one model.
70
181
  * @param index - The namespace index.
71
182
  * @returns the operation.
72
183
  */
73
- const buildInsertOneOperation = (model, index) => {
184
+ const buildInsertOneOperation = (model, index, pkFactory) => {
74
185
  const document = {
75
186
  insert: index,
76
187
  document: model.document
77
188
  };
189
+ document.document._id = model.document._id ?? pkFactory.createPk();
78
190
  return document;
79
191
  };
80
192
  exports.buildInsertOneOperation = buildInsertOneOperation;
@@ -135,10 +247,24 @@ const buildUpdateManyOperation = (model, index) => {
135
247
  return createUpdateOperation(model, index, true);
136
248
  };
137
249
  exports.buildUpdateManyOperation = buildUpdateManyOperation;
250
+ /**
251
+ * Validate the update document.
252
+ * @param update - The update document.
253
+ */
254
+ function validateUpdate(update) {
255
+ if (!(0, utils_1.hasAtomicOperators)(update)) {
256
+ throw new error_1.MongoAPIError('Client bulk write update models must only contain atomic modifiers (start with $) and must not be empty.');
257
+ }
258
+ }
138
259
  /**
139
260
  * Creates a delete operation based on the parameters.
140
261
  */
141
262
  function createUpdateOperation(model, index, multi) {
263
+ // Update documents provided in UpdateOne and UpdateMany write models are
264
+ // required only to contain atomic modifiers (i.e. keys that start with "$").
265
+ // Drivers MUST throw an error if an update document is empty or if the
266
+ // document's first key does not start with "$".
267
+ validateUpdate(model.update);
142
268
  const document = {
143
269
  update: index,
144
270
  multi: multi,
@@ -154,6 +280,9 @@ function createUpdateOperation(model, index, multi) {
154
280
  if (model.arrayFilters) {
155
281
  document.arrayFilters = model.arrayFilters;
156
282
  }
283
+ if (model.collation) {
284
+ document.collation = model.collation;
285
+ }
157
286
  return document;
158
287
  }
159
288
  /**
@@ -163,6 +292,9 @@ function createUpdateOperation(model, index, multi) {
163
292
  * @returns the operation.
164
293
  */
165
294
  const buildReplaceOneOperation = (model, index) => {
295
+ if ((0, utils_1.hasAtomicOperators)(model.replacement)) {
296
+ throw new error_1.MongoAPIError('Client bulk write replace models must not contain atomic modifiers (start with $) and must not be empty.');
297
+ }
166
298
  const document = {
167
299
  update: index,
168
300
  multi: false,
@@ -175,14 +307,17 @@ const buildReplaceOneOperation = (model, index) => {
175
307
  if (model.upsert) {
176
308
  document.upsert = model.upsert;
177
309
  }
310
+ if (model.collation) {
311
+ document.collation = model.collation;
312
+ }
178
313
  return document;
179
314
  };
180
315
  exports.buildReplaceOneOperation = buildReplaceOneOperation;
181
316
  /** @internal */
182
- function buildOperation(model, index) {
317
+ function buildOperation(model, index, pkFactory) {
183
318
  switch (model.name) {
184
319
  case 'insertOne':
185
- return (0, exports.buildInsertOneOperation)(model, index);
320
+ return (0, exports.buildInsertOneOperation)(model, index, pkFactory);
186
321
  case 'deleteOne':
187
322
  return (0, exports.buildDeleteOneOperation)(model, index);
188
323
  case 'deleteMany':
@@ -1 +1 @@
1
- {"version":3,"file":"command_builder.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/command_builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command_builder.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/command_builder.ts"],"names":[],"mappings":"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"}