mongodb 6.9.0-dev.20241019.sha.e9e8bf5b → 6.9.0-dev.20241021.sha.30c61f2a
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/beta.d.ts +64 -28
- package/lib/mongo_client.js +2 -1
- package/lib/mongo_client.js.map +1 -1
- package/lib/operations/client_bulk_write/command_builder.js.map +1 -1
- package/lib/operations/client_bulk_write/executor.js +4 -4
- package/lib/operations/client_bulk_write/executor.js.map +1 -1
- package/lib/operations/client_bulk_write/results_merger.js +37 -0
- package/lib/operations/client_bulk_write/results_merger.js.map +1 -1
- package/mongodb.d.ts +64 -28
- package/package.json +1 -1
- package/src/index.ts +1 -0
- package/src/mongo_client.ts +10 -6
- package/src/operations/client_bulk_write/command_builder.ts +17 -11
- package/src/operations/client_bulk_write/common.ts +71 -31
- package/src/operations/client_bulk_write/executor.ts +11 -9
- package/src/operations/client_bulk_write/results_merger.ts +82 -3
package/lib/beta.d.ts
CHANGED
|
@@ -530,7 +530,7 @@ export declare type AnyBulkWriteOperation<TSchema extends Document = Document> =
|
|
|
530
530
|
* to MongoClient#bulkWrite.
|
|
531
531
|
* @public
|
|
532
532
|
*/
|
|
533
|
-
export declare type AnyClientBulkWriteModel = ClientInsertOneModel | ClientReplaceOneModel | ClientUpdateOneModel | ClientUpdateManyModel | ClientDeleteOneModel | ClientDeleteManyModel
|
|
533
|
+
export declare type AnyClientBulkWriteModel<TSchema extends Document> = ClientInsertOneModel<TSchema> | ClientReplaceOneModel<TSchema> | ClientUpdateOneModel<TSchema> | ClientUpdateManyModel<TSchema> | ClientDeleteOneModel<TSchema> | ClientDeleteManyModel<TSchema>;
|
|
534
534
|
|
|
535
535
|
/** @public */
|
|
536
536
|
export declare type AnyError = MongoError | Error;
|
|
@@ -1513,6 +1513,33 @@ export declare interface ClientBulkWriteError {
|
|
|
1513
1513
|
message: string;
|
|
1514
1514
|
}
|
|
1515
1515
|
|
|
1516
|
+
/**
|
|
1517
|
+
* A mapping of namespace strings to collections schemas.
|
|
1518
|
+
* @public
|
|
1519
|
+
*
|
|
1520
|
+
* @example
|
|
1521
|
+
* ```ts
|
|
1522
|
+
* type MongoDBSchemas = {
|
|
1523
|
+
* 'db.books': Book;
|
|
1524
|
+
* 'db.authors': Author;
|
|
1525
|
+
* }
|
|
1526
|
+
*
|
|
1527
|
+
* const model: ClientBulkWriteModel<MongoDBSchemas> = {
|
|
1528
|
+
* namespace: 'db.books'
|
|
1529
|
+
* name: 'insertOne',
|
|
1530
|
+
* document: { title: 'Practical MongoDB Aggregations', authorName: 3 } // error `authorName` cannot be number
|
|
1531
|
+
* };
|
|
1532
|
+
* ```
|
|
1533
|
+
*
|
|
1534
|
+
* The type of the `namespace` field narrows other parts of the BulkWriteModel to use the correct schema for type assertions.
|
|
1535
|
+
*
|
|
1536
|
+
*/
|
|
1537
|
+
export declare type ClientBulkWriteModel<SchemaMap extends Record<string, Document> = Record<string, Document>> = {
|
|
1538
|
+
[Namespace in keyof SchemaMap]: AnyClientBulkWriteModel<SchemaMap[Namespace]> & {
|
|
1539
|
+
namespace: Namespace;
|
|
1540
|
+
};
|
|
1541
|
+
}[keyof SchemaMap];
|
|
1542
|
+
|
|
1516
1543
|
/** @public */
|
|
1517
1544
|
export declare interface ClientBulkWriteOptions extends CommandOperationOptions {
|
|
1518
1545
|
/**
|
|
@@ -1537,48 +1564,52 @@ export declare interface ClientBulkWriteOptions extends CommandOperationOptions
|
|
|
1537
1564
|
|
|
1538
1565
|
/** @public */
|
|
1539
1566
|
export declare interface ClientBulkWriteResult {
|
|
1567
|
+
/**
|
|
1568
|
+
* Whether the bulk write was acknowledged.
|
|
1569
|
+
*/
|
|
1570
|
+
readonly acknowledged: boolean;
|
|
1540
1571
|
/**
|
|
1541
1572
|
* The total number of documents inserted across all insert operations.
|
|
1542
1573
|
*/
|
|
1543
|
-
insertedCount: number;
|
|
1574
|
+
readonly insertedCount: number;
|
|
1544
1575
|
/**
|
|
1545
1576
|
* The total number of documents upserted across all update operations.
|
|
1546
1577
|
*/
|
|
1547
|
-
upsertedCount: number;
|
|
1578
|
+
readonly upsertedCount: number;
|
|
1548
1579
|
/**
|
|
1549
1580
|
* The total number of documents matched across all update operations.
|
|
1550
1581
|
*/
|
|
1551
|
-
matchedCount: number;
|
|
1582
|
+
readonly matchedCount: number;
|
|
1552
1583
|
/**
|
|
1553
1584
|
* The total number of documents modified across all update operations.
|
|
1554
1585
|
*/
|
|
1555
|
-
modifiedCount: number;
|
|
1586
|
+
readonly modifiedCount: number;
|
|
1556
1587
|
/**
|
|
1557
1588
|
* The total number of documents deleted across all delete operations.
|
|
1558
1589
|
*/
|
|
1559
|
-
deletedCount: number;
|
|
1590
|
+
readonly deletedCount: number;
|
|
1560
1591
|
/**
|
|
1561
1592
|
* The results of each individual insert operation that was successfully performed.
|
|
1562
1593
|
*/
|
|
1563
|
-
insertResults?:
|
|
1594
|
+
readonly insertResults?: ReadonlyMap<number, ClientInsertOneResult>;
|
|
1564
1595
|
/**
|
|
1565
1596
|
* The results of each individual update operation that was successfully performed.
|
|
1566
1597
|
*/
|
|
1567
|
-
updateResults?:
|
|
1598
|
+
readonly updateResults?: ReadonlyMap<number, ClientUpdateResult>;
|
|
1568
1599
|
/**
|
|
1569
1600
|
* The results of each individual delete operation that was successfully performed.
|
|
1570
1601
|
*/
|
|
1571
|
-
deleteResults?:
|
|
1602
|
+
readonly deleteResults?: ReadonlyMap<number, ClientDeleteResult>;
|
|
1572
1603
|
}
|
|
1573
1604
|
|
|
1574
1605
|
/** @public */
|
|
1575
|
-
export declare interface ClientDeleteManyModel extends ClientWriteModel {
|
|
1606
|
+
export declare interface ClientDeleteManyModel<TSchema> extends ClientWriteModel {
|
|
1576
1607
|
name: 'deleteMany';
|
|
1577
1608
|
/**
|
|
1578
1609
|
* The filter used to determine if a document should be deleted.
|
|
1579
1610
|
* For a deleteMany operation, all matches are removed.
|
|
1580
1611
|
*/
|
|
1581
|
-
filter: Filter<
|
|
1612
|
+
filter: Filter<TSchema>;
|
|
1582
1613
|
/** Specifies a collation. */
|
|
1583
1614
|
collation?: CollationOptions;
|
|
1584
1615
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -1586,13 +1617,13 @@ export declare interface ClientDeleteManyModel extends ClientWriteModel {
|
|
|
1586
1617
|
}
|
|
1587
1618
|
|
|
1588
1619
|
/** @public */
|
|
1589
|
-
export declare interface ClientDeleteOneModel extends ClientWriteModel {
|
|
1620
|
+
export declare interface ClientDeleteOneModel<TSchema> extends ClientWriteModel {
|
|
1590
1621
|
name: 'deleteOne';
|
|
1591
1622
|
/**
|
|
1592
1623
|
* The filter used to determine if a document should be deleted.
|
|
1593
1624
|
* For a deleteOne operation, the first match is removed.
|
|
1594
1625
|
*/
|
|
1595
|
-
filter: Filter<
|
|
1626
|
+
filter: Filter<TSchema>;
|
|
1596
1627
|
/** Specifies a collation. */
|
|
1597
1628
|
collation?: CollationOptions;
|
|
1598
1629
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -2029,10 +2060,10 @@ export declare type ClientEncryptionSocketOptions = Pick<MongoClientOptions, 'au
|
|
|
2029
2060
|
export declare type ClientEncryptionTlsOptions = Pick<MongoClientOptions, 'tlsCAFile' | 'tlsCertificateKeyFile' | 'tlsCertificateKeyFilePassword'>;
|
|
2030
2061
|
|
|
2031
2062
|
/** @public */
|
|
2032
|
-
export declare interface ClientInsertOneModel extends ClientWriteModel {
|
|
2063
|
+
export declare interface ClientInsertOneModel<TSchema> extends ClientWriteModel {
|
|
2033
2064
|
name: 'insertOne';
|
|
2034
2065
|
/** The document to insert. */
|
|
2035
|
-
document: OptionalId<
|
|
2066
|
+
document: OptionalId<TSchema>;
|
|
2036
2067
|
}
|
|
2037
2068
|
|
|
2038
2069
|
/** @public */
|
|
@@ -2083,15 +2114,15 @@ export declare interface ClientMetadataOptions {
|
|
|
2083
2114
|
}
|
|
2084
2115
|
|
|
2085
2116
|
/** @public */
|
|
2086
|
-
export declare interface ClientReplaceOneModel extends ClientWriteModel {
|
|
2117
|
+
export declare interface ClientReplaceOneModel<TSchema> extends ClientWriteModel {
|
|
2087
2118
|
name: 'replaceOne';
|
|
2088
2119
|
/**
|
|
2089
2120
|
* The filter used to determine if a document should be replaced.
|
|
2090
2121
|
* For a replaceOne operation, the first match is replaced.
|
|
2091
2122
|
*/
|
|
2092
|
-
filter: Filter<
|
|
2123
|
+
filter: Filter<TSchema>;
|
|
2093
2124
|
/** The document with which to replace the matched document. */
|
|
2094
|
-
replacement: WithoutId<
|
|
2125
|
+
replacement: WithoutId<TSchema>;
|
|
2095
2126
|
/** Specifies a collation. */
|
|
2096
2127
|
collation?: CollationOptions;
|
|
2097
2128
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -2261,19 +2292,19 @@ export declare interface ClientSessionOptions {
|
|
|
2261
2292
|
}
|
|
2262
2293
|
|
|
2263
2294
|
/** @public */
|
|
2264
|
-
export declare interface ClientUpdateManyModel extends ClientWriteModel {
|
|
2295
|
+
export declare interface ClientUpdateManyModel<TSchema> extends ClientWriteModel {
|
|
2265
2296
|
name: 'updateMany';
|
|
2266
2297
|
/**
|
|
2267
2298
|
* The filter used to determine if a document should be updated.
|
|
2268
2299
|
* For an updateMany operation, all matches are updated.
|
|
2269
2300
|
*/
|
|
2270
|
-
filter: Filter<
|
|
2301
|
+
filter: Filter<TSchema>;
|
|
2271
2302
|
/**
|
|
2272
2303
|
* The modifications to apply. The value can be either:
|
|
2273
2304
|
* UpdateFilter<Document> - A document that contains update operator expressions,
|
|
2274
2305
|
* Document[] - an aggregation pipeline.
|
|
2275
2306
|
*/
|
|
2276
|
-
update: UpdateFilter<
|
|
2307
|
+
update: UpdateFilter<TSchema> | Document[];
|
|
2277
2308
|
/** A set of filters specifying to which array elements an update should apply. */
|
|
2278
2309
|
arrayFilters?: Document[];
|
|
2279
2310
|
/** Specifies a collation. */
|
|
@@ -2285,19 +2316,19 @@ export declare interface ClientUpdateManyModel extends ClientWriteModel {
|
|
|
2285
2316
|
}
|
|
2286
2317
|
|
|
2287
2318
|
/** @public */
|
|
2288
|
-
export declare interface ClientUpdateOneModel extends ClientWriteModel {
|
|
2319
|
+
export declare interface ClientUpdateOneModel<TSchema> extends ClientWriteModel {
|
|
2289
2320
|
name: 'updateOne';
|
|
2290
2321
|
/**
|
|
2291
2322
|
* The filter used to determine if a document should be updated.
|
|
2292
2323
|
* For an updateOne operation, the first match is updated.
|
|
2293
2324
|
*/
|
|
2294
|
-
filter: Filter<
|
|
2325
|
+
filter: Filter<TSchema>;
|
|
2295
2326
|
/**
|
|
2296
2327
|
* The modifications to apply. The value can be either:
|
|
2297
2328
|
* UpdateFilter<Document> - A document that contains update operator expressions,
|
|
2298
2329
|
* Document[] - an aggregation pipeline.
|
|
2299
2330
|
*/
|
|
2300
|
-
update: UpdateFilter<
|
|
2331
|
+
update: UpdateFilter<TSchema> | Document[];
|
|
2301
2332
|
/** A set of filters specifying to which array elements an update should apply. */
|
|
2302
2333
|
arrayFilters?: Document[];
|
|
2303
2334
|
/** Specifies a collation. */
|
|
@@ -2334,7 +2365,14 @@ export declare interface ClientUpdateResult {
|
|
|
2334
2365
|
|
|
2335
2366
|
/** @public */
|
|
2336
2367
|
export declare interface ClientWriteModel {
|
|
2337
|
-
/**
|
|
2368
|
+
/**
|
|
2369
|
+
* The namespace for the write.
|
|
2370
|
+
*
|
|
2371
|
+
* A namespace is a combination of the database name and the name of the collection: `<database-name>.<collection>`.
|
|
2372
|
+
* All documents belong to a namespace.
|
|
2373
|
+
*
|
|
2374
|
+
* @see https://www.mongodb.com/docs/manual/reference/limits/#std-label-faq-dev-namespace
|
|
2375
|
+
*/
|
|
2338
2376
|
namespace: string;
|
|
2339
2377
|
}
|
|
2340
2378
|
|
|
@@ -5284,9 +5322,7 @@ export declare class MongoClient extends TypedEventEmitter<MongoClientEvents> im
|
|
|
5284
5322
|
* @param options - The client bulk write options.
|
|
5285
5323
|
* @returns A ClientBulkWriteResult for acknowledged writes and ok: 1 for unacknowledged writes.
|
|
5286
5324
|
*/
|
|
5287
|
-
bulkWrite(models:
|
|
5288
|
-
ok: 1;
|
|
5289
|
-
}>;
|
|
5325
|
+
bulkWrite<SchemaMap extends Record<string, Document> = Record<string, Document>>(models: ReadonlyArray<ClientBulkWriteModel<SchemaMap>>, options?: ClientBulkWriteOptions): Promise<ClientBulkWriteResult>;
|
|
5290
5326
|
/**
|
|
5291
5327
|
* Connect to MongoDB using a url
|
|
5292
5328
|
*
|
package/lib/mongo_client.js
CHANGED
|
@@ -144,7 +144,8 @@ class MongoClient extends mongo_types_1.TypedEventEmitter {
|
|
|
144
144
|
if (this.autoEncrypter) {
|
|
145
145
|
throw new error_1.MongoInvalidArgumentError('MongoClient bulkWrite does not currently support automatic encryption.');
|
|
146
146
|
}
|
|
147
|
-
|
|
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();
|
|
148
149
|
}
|
|
149
150
|
/**
|
|
150
151
|
* Connect to MongoDB using a url
|
package/lib/mongo_client.js.map
CHANGED
|
@@ -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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command_builder.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/command_builder.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"command_builder.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/command_builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,7 +60,7 @@ class ClientBulkWriteExecutor {
|
|
|
60
60
|
const operation = new client_bulk_write_1.ClientBulkWriteOperation(commandBuilder, this.options);
|
|
61
61
|
await (0, execute_operation_1.executeOperation)(this.client, operation);
|
|
62
62
|
}
|
|
63
|
-
return
|
|
63
|
+
return results_merger_1.ClientBulkWriteResultsMerger.unacknowledged();
|
|
64
64
|
}
|
|
65
65
|
else {
|
|
66
66
|
const resultsMerger = new results_merger_1.ClientBulkWriteResultsMerger(this.options);
|
|
@@ -82,7 +82,7 @@ class ClientBulkWriteExecutor {
|
|
|
82
82
|
message: 'Mongo client bulk write encountered an error during execution'
|
|
83
83
|
});
|
|
84
84
|
bulkWriteError.cause = error;
|
|
85
|
-
bulkWriteError.partialResult = resultsMerger.
|
|
85
|
+
bulkWriteError.partialResult = resultsMerger.bulkWriteResult;
|
|
86
86
|
throw bulkWriteError;
|
|
87
87
|
}
|
|
88
88
|
else {
|
|
@@ -98,10 +98,10 @@ class ClientBulkWriteExecutor {
|
|
|
98
98
|
});
|
|
99
99
|
error.writeConcernErrors = resultsMerger.writeConcernErrors;
|
|
100
100
|
error.writeErrors = resultsMerger.writeErrors;
|
|
101
|
-
error.partialResult = resultsMerger.
|
|
101
|
+
error.partialResult = resultsMerger.bulkWriteResult;
|
|
102
102
|
throw error;
|
|
103
103
|
}
|
|
104
|
-
return resultsMerger.
|
|
104
|
+
return resultsMerger.bulkWriteResult;
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/executor.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/executor.ts"],"names":[],"mappings":";;;AAEA,oFAA8E;AAC9E,uCAKqB;AAErB,uDAAmD;AACnD,4DAAwD;AACxD,2DAA+D;AAC/D,uDAAkE;AAMlE,qDAAgE;AAEhE;;;GAGG;AACH,MAAa,uBAAuB;IAKlC;;;;;OAKG;IACH,YACE,MAAmB,EACnB,UAA4D,EAC5D,OAAgC;QAEhC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,0CAAkC,CAAC,4CAA4C,CAAC,CAAC;QAC7F,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG;YACb,OAAO,EAAE,IAAI;YACb,wBAAwB,EAAE,KAAK;YAC/B,cAAc,EAAE,KAAK;YACrB,GAAG,OAAO;SACX,CAAC;QAEF,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,4BAAY,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBAChC,MAAM,IAAI,iCAAyB,CACjC,iEAAiE,CAClE,CAAC;YACJ,CAAC;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,iCAAyB,CACjC,gEAAgE,CACjE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO;QACX,uFAAuF;QACvF,sCAAsC;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAClD,MAAM,cAAc,GAAG,IAAI,+CAA6B,CACtD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,OAAO,EACZ,SAAS,CACV,CAAC;QACF,wEAAwE;QACxE,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO,cAAc,CAAC,YAAY,EAAE,EAAE,CAAC;gBACrC,MAAM,SAAS,GAAG,IAAI,4CAAwB,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC7E,MAAM,IAAA,oCAAgB,EAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,6CAA4B,CAAC,cAAc,EAAE,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,MAAM,aAAa,GAAG,IAAI,6CAA4B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrE,0EAA0E;YAC1E,OAAO,cAAc,CAAC,YAAY,EAAE,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,IAAI,gDAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpF,IAAI,CAAC;oBACH,MAAM,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACpC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,kGAAkG;oBAClG,iGAAiG;oBACjG,mGAAmG;oBACnG,0DAA0D;oBAC1D,IAAI,KAAK,YAAY,wBAAgB,IAAI,CAAC,CAAC,KAAK,YAAY,iCAAyB,CAAC,EAAE,CAAC;wBACvF,2FAA2F;wBAC3F,sEAAsE;wBACtE,MAAM,cAAc,GAAG,IAAI,iCAAyB,CAAC;4BACnD,OAAO,EAAE,+DAA+D;yBACzE,CAAC,CAAC;wBACH,cAAc,CAAC,KAAK,GAAG,KAAK,CAAC;wBAC7B,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC;wBAC7D,MAAM,cAAc,CAAC;oBACvB,CAAC;yBAAM,CAAC;wBACN,sCAAsC;wBACtC,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YAED,iFAAiF;YACjF,IAAI,aAAa,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACtF,MAAM,KAAK,GAAG,IAAI,iCAAyB,CAAC;oBAC1C,OAAO,EAAE,8DAA8D;iBACxE,CAAC,CAAC;gBACH,KAAK,CAAC,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,CAAC;gBAC5D,KAAK,CAAC,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC;gBAC9C,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC;gBACpD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,OAAO,aAAa,CAAC,eAAe,CAAC;QACvC,CAAC;IACH,CAAC;CACF;AAhHD,0DAgHC"}
|
|
@@ -3,11 +3,31 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ClientBulkWriteResultsMerger = void 0;
|
|
4
4
|
const __1 = require("../..");
|
|
5
5
|
const error_1 = require("../../error");
|
|
6
|
+
/**
|
|
7
|
+
* Unacknowledged bulk writes are always the same.
|
|
8
|
+
*/
|
|
9
|
+
const UNACKNOWLEDGED = {
|
|
10
|
+
acknowledged: false,
|
|
11
|
+
insertedCount: 0,
|
|
12
|
+
upsertedCount: 0,
|
|
13
|
+
matchedCount: 0,
|
|
14
|
+
modifiedCount: 0,
|
|
15
|
+
deletedCount: 0,
|
|
16
|
+
insertResults: undefined,
|
|
17
|
+
updateResults: undefined,
|
|
18
|
+
deleteResults: undefined
|
|
19
|
+
};
|
|
6
20
|
/**
|
|
7
21
|
* Merges client bulk write cursor responses together into a single result.
|
|
8
22
|
* @internal
|
|
9
23
|
*/
|
|
10
24
|
class ClientBulkWriteResultsMerger {
|
|
25
|
+
/**
|
|
26
|
+
* @returns The standard unacknowledged bulk write result.
|
|
27
|
+
*/
|
|
28
|
+
static unacknowledged() {
|
|
29
|
+
return UNACKNOWLEDGED;
|
|
30
|
+
}
|
|
11
31
|
/**
|
|
12
32
|
* Instantiate the merger.
|
|
13
33
|
* @param options - The options.
|
|
@@ -18,6 +38,7 @@ class ClientBulkWriteResultsMerger {
|
|
|
18
38
|
this.writeConcernErrors = [];
|
|
19
39
|
this.writeErrors = new Map();
|
|
20
40
|
this.result = {
|
|
41
|
+
acknowledged: true,
|
|
21
42
|
insertedCount: 0,
|
|
22
43
|
upsertedCount: 0,
|
|
23
44
|
matchedCount: 0,
|
|
@@ -33,6 +54,22 @@ class ClientBulkWriteResultsMerger {
|
|
|
33
54
|
this.result.deleteResults = new Map();
|
|
34
55
|
}
|
|
35
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Get the bulk write result object.
|
|
59
|
+
*/
|
|
60
|
+
get bulkWriteResult() {
|
|
61
|
+
return {
|
|
62
|
+
acknowledged: this.result.acknowledged,
|
|
63
|
+
insertedCount: this.result.insertedCount,
|
|
64
|
+
upsertedCount: this.result.upsertedCount,
|
|
65
|
+
matchedCount: this.result.matchedCount,
|
|
66
|
+
modifiedCount: this.result.modifiedCount,
|
|
67
|
+
deletedCount: this.result.deletedCount,
|
|
68
|
+
insertResults: this.result.insertResults,
|
|
69
|
+
updateResults: this.result.updateResults,
|
|
70
|
+
deleteResults: this.result.deleteResults
|
|
71
|
+
};
|
|
72
|
+
}
|
|
36
73
|
/**
|
|
37
74
|
* Merge the results in the cursor to the existing result.
|
|
38
75
|
* @param currentBatchOffset - The offset index to the original models.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"results_merger.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/results_merger.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"results_merger.js","sourceRoot":"","sources":["../../../src/operations/client_bulk_write/results_merger.ts"],"names":[],"mappings":"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"}
|
package/mongodb.d.ts
CHANGED
|
@@ -525,7 +525,7 @@ export declare type AnyBulkWriteOperation<TSchema extends Document = Document> =
|
|
|
525
525
|
* to MongoClient#bulkWrite.
|
|
526
526
|
* @public
|
|
527
527
|
*/
|
|
528
|
-
export declare type AnyClientBulkWriteModel = ClientInsertOneModel | ClientReplaceOneModel | ClientUpdateOneModel | ClientUpdateManyModel | ClientDeleteOneModel | ClientDeleteManyModel
|
|
528
|
+
export declare type AnyClientBulkWriteModel<TSchema extends Document> = ClientInsertOneModel<TSchema> | ClientReplaceOneModel<TSchema> | ClientUpdateOneModel<TSchema> | ClientUpdateManyModel<TSchema> | ClientDeleteOneModel<TSchema> | ClientDeleteManyModel<TSchema>;
|
|
529
529
|
|
|
530
530
|
/** @public */
|
|
531
531
|
export declare type AnyError = MongoError | Error;
|
|
@@ -1499,6 +1499,33 @@ export declare interface ClientBulkWriteError {
|
|
|
1499
1499
|
message: string;
|
|
1500
1500
|
}
|
|
1501
1501
|
|
|
1502
|
+
/**
|
|
1503
|
+
* A mapping of namespace strings to collections schemas.
|
|
1504
|
+
* @public
|
|
1505
|
+
*
|
|
1506
|
+
* @example
|
|
1507
|
+
* ```ts
|
|
1508
|
+
* type MongoDBSchemas = {
|
|
1509
|
+
* 'db.books': Book;
|
|
1510
|
+
* 'db.authors': Author;
|
|
1511
|
+
* }
|
|
1512
|
+
*
|
|
1513
|
+
* const model: ClientBulkWriteModel<MongoDBSchemas> = {
|
|
1514
|
+
* namespace: 'db.books'
|
|
1515
|
+
* name: 'insertOne',
|
|
1516
|
+
* document: { title: 'Practical MongoDB Aggregations', authorName: 3 } // error `authorName` cannot be number
|
|
1517
|
+
* };
|
|
1518
|
+
* ```
|
|
1519
|
+
*
|
|
1520
|
+
* The type of the `namespace` field narrows other parts of the BulkWriteModel to use the correct schema for type assertions.
|
|
1521
|
+
*
|
|
1522
|
+
*/
|
|
1523
|
+
export declare type ClientBulkWriteModel<SchemaMap extends Record<string, Document> = Record<string, Document>> = {
|
|
1524
|
+
[Namespace in keyof SchemaMap]: AnyClientBulkWriteModel<SchemaMap[Namespace]> & {
|
|
1525
|
+
namespace: Namespace;
|
|
1526
|
+
};
|
|
1527
|
+
}[keyof SchemaMap];
|
|
1528
|
+
|
|
1502
1529
|
/** @public */
|
|
1503
1530
|
export declare interface ClientBulkWriteOptions extends CommandOperationOptions {
|
|
1504
1531
|
/**
|
|
@@ -1523,48 +1550,52 @@ export declare interface ClientBulkWriteOptions extends CommandOperationOptions
|
|
|
1523
1550
|
|
|
1524
1551
|
/** @public */
|
|
1525
1552
|
export declare interface ClientBulkWriteResult {
|
|
1553
|
+
/**
|
|
1554
|
+
* Whether the bulk write was acknowledged.
|
|
1555
|
+
*/
|
|
1556
|
+
readonly acknowledged: boolean;
|
|
1526
1557
|
/**
|
|
1527
1558
|
* The total number of documents inserted across all insert operations.
|
|
1528
1559
|
*/
|
|
1529
|
-
insertedCount: number;
|
|
1560
|
+
readonly insertedCount: number;
|
|
1530
1561
|
/**
|
|
1531
1562
|
* The total number of documents upserted across all update operations.
|
|
1532
1563
|
*/
|
|
1533
|
-
upsertedCount: number;
|
|
1564
|
+
readonly upsertedCount: number;
|
|
1534
1565
|
/**
|
|
1535
1566
|
* The total number of documents matched across all update operations.
|
|
1536
1567
|
*/
|
|
1537
|
-
matchedCount: number;
|
|
1568
|
+
readonly matchedCount: number;
|
|
1538
1569
|
/**
|
|
1539
1570
|
* The total number of documents modified across all update operations.
|
|
1540
1571
|
*/
|
|
1541
|
-
modifiedCount: number;
|
|
1572
|
+
readonly modifiedCount: number;
|
|
1542
1573
|
/**
|
|
1543
1574
|
* The total number of documents deleted across all delete operations.
|
|
1544
1575
|
*/
|
|
1545
|
-
deletedCount: number;
|
|
1576
|
+
readonly deletedCount: number;
|
|
1546
1577
|
/**
|
|
1547
1578
|
* The results of each individual insert operation that was successfully performed.
|
|
1548
1579
|
*/
|
|
1549
|
-
insertResults?:
|
|
1580
|
+
readonly insertResults?: ReadonlyMap<number, ClientInsertOneResult>;
|
|
1550
1581
|
/**
|
|
1551
1582
|
* The results of each individual update operation that was successfully performed.
|
|
1552
1583
|
*/
|
|
1553
|
-
updateResults?:
|
|
1584
|
+
readonly updateResults?: ReadonlyMap<number, ClientUpdateResult>;
|
|
1554
1585
|
/**
|
|
1555
1586
|
* The results of each individual delete operation that was successfully performed.
|
|
1556
1587
|
*/
|
|
1557
|
-
deleteResults?:
|
|
1588
|
+
readonly deleteResults?: ReadonlyMap<number, ClientDeleteResult>;
|
|
1558
1589
|
}
|
|
1559
1590
|
|
|
1560
1591
|
/** @public */
|
|
1561
|
-
export declare interface ClientDeleteManyModel extends ClientWriteModel {
|
|
1592
|
+
export declare interface ClientDeleteManyModel<TSchema> extends ClientWriteModel {
|
|
1562
1593
|
name: 'deleteMany';
|
|
1563
1594
|
/**
|
|
1564
1595
|
* The filter used to determine if a document should be deleted.
|
|
1565
1596
|
* For a deleteMany operation, all matches are removed.
|
|
1566
1597
|
*/
|
|
1567
|
-
filter: Filter<
|
|
1598
|
+
filter: Filter<TSchema>;
|
|
1568
1599
|
/** Specifies a collation. */
|
|
1569
1600
|
collation?: CollationOptions;
|
|
1570
1601
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -1572,13 +1603,13 @@ export declare interface ClientDeleteManyModel extends ClientWriteModel {
|
|
|
1572
1603
|
}
|
|
1573
1604
|
|
|
1574
1605
|
/** @public */
|
|
1575
|
-
export declare interface ClientDeleteOneModel extends ClientWriteModel {
|
|
1606
|
+
export declare interface ClientDeleteOneModel<TSchema> extends ClientWriteModel {
|
|
1576
1607
|
name: 'deleteOne';
|
|
1577
1608
|
/**
|
|
1578
1609
|
* The filter used to determine if a document should be deleted.
|
|
1579
1610
|
* For a deleteOne operation, the first match is removed.
|
|
1580
1611
|
*/
|
|
1581
|
-
filter: Filter<
|
|
1612
|
+
filter: Filter<TSchema>;
|
|
1582
1613
|
/** Specifies a collation. */
|
|
1583
1614
|
collation?: CollationOptions;
|
|
1584
1615
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -2015,10 +2046,10 @@ export declare type ClientEncryptionSocketOptions = Pick<MongoClientOptions, 'au
|
|
|
2015
2046
|
export declare type ClientEncryptionTlsOptions = Pick<MongoClientOptions, 'tlsCAFile' | 'tlsCertificateKeyFile' | 'tlsCertificateKeyFilePassword'>;
|
|
2016
2047
|
|
|
2017
2048
|
/** @public */
|
|
2018
|
-
export declare interface ClientInsertOneModel extends ClientWriteModel {
|
|
2049
|
+
export declare interface ClientInsertOneModel<TSchema> extends ClientWriteModel {
|
|
2019
2050
|
name: 'insertOne';
|
|
2020
2051
|
/** The document to insert. */
|
|
2021
|
-
document: OptionalId<
|
|
2052
|
+
document: OptionalId<TSchema>;
|
|
2022
2053
|
}
|
|
2023
2054
|
|
|
2024
2055
|
/** @public */
|
|
@@ -2069,15 +2100,15 @@ export declare interface ClientMetadataOptions {
|
|
|
2069
2100
|
}
|
|
2070
2101
|
|
|
2071
2102
|
/** @public */
|
|
2072
|
-
export declare interface ClientReplaceOneModel extends ClientWriteModel {
|
|
2103
|
+
export declare interface ClientReplaceOneModel<TSchema> extends ClientWriteModel {
|
|
2073
2104
|
name: 'replaceOne';
|
|
2074
2105
|
/**
|
|
2075
2106
|
* The filter used to determine if a document should be replaced.
|
|
2076
2107
|
* For a replaceOne operation, the first match is replaced.
|
|
2077
2108
|
*/
|
|
2078
|
-
filter: Filter<
|
|
2109
|
+
filter: Filter<TSchema>;
|
|
2079
2110
|
/** The document with which to replace the matched document. */
|
|
2080
|
-
replacement: WithoutId<
|
|
2111
|
+
replacement: WithoutId<TSchema>;
|
|
2081
2112
|
/** Specifies a collation. */
|
|
2082
2113
|
collation?: CollationOptions;
|
|
2083
2114
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -2242,19 +2273,19 @@ export declare interface ClientSessionOptions {
|
|
|
2242
2273
|
}
|
|
2243
2274
|
|
|
2244
2275
|
/** @public */
|
|
2245
|
-
export declare interface ClientUpdateManyModel extends ClientWriteModel {
|
|
2276
|
+
export declare interface ClientUpdateManyModel<TSchema> extends ClientWriteModel {
|
|
2246
2277
|
name: 'updateMany';
|
|
2247
2278
|
/**
|
|
2248
2279
|
* The filter used to determine if a document should be updated.
|
|
2249
2280
|
* For an updateMany operation, all matches are updated.
|
|
2250
2281
|
*/
|
|
2251
|
-
filter: Filter<
|
|
2282
|
+
filter: Filter<TSchema>;
|
|
2252
2283
|
/**
|
|
2253
2284
|
* The modifications to apply. The value can be either:
|
|
2254
2285
|
* UpdateFilter<Document> - A document that contains update operator expressions,
|
|
2255
2286
|
* Document[] - an aggregation pipeline.
|
|
2256
2287
|
*/
|
|
2257
|
-
update: UpdateFilter<
|
|
2288
|
+
update: UpdateFilter<TSchema> | Document[];
|
|
2258
2289
|
/** A set of filters specifying to which array elements an update should apply. */
|
|
2259
2290
|
arrayFilters?: Document[];
|
|
2260
2291
|
/** Specifies a collation. */
|
|
@@ -2266,19 +2297,19 @@ export declare interface ClientUpdateManyModel extends ClientWriteModel {
|
|
|
2266
2297
|
}
|
|
2267
2298
|
|
|
2268
2299
|
/** @public */
|
|
2269
|
-
export declare interface ClientUpdateOneModel extends ClientWriteModel {
|
|
2300
|
+
export declare interface ClientUpdateOneModel<TSchema> extends ClientWriteModel {
|
|
2270
2301
|
name: 'updateOne';
|
|
2271
2302
|
/**
|
|
2272
2303
|
* The filter used to determine if a document should be updated.
|
|
2273
2304
|
* For an updateOne operation, the first match is updated.
|
|
2274
2305
|
*/
|
|
2275
|
-
filter: Filter<
|
|
2306
|
+
filter: Filter<TSchema>;
|
|
2276
2307
|
/**
|
|
2277
2308
|
* The modifications to apply. The value can be either:
|
|
2278
2309
|
* UpdateFilter<Document> - A document that contains update operator expressions,
|
|
2279
2310
|
* Document[] - an aggregation pipeline.
|
|
2280
2311
|
*/
|
|
2281
|
-
update: UpdateFilter<
|
|
2312
|
+
update: UpdateFilter<TSchema> | Document[];
|
|
2282
2313
|
/** A set of filters specifying to which array elements an update should apply. */
|
|
2283
2314
|
arrayFilters?: Document[];
|
|
2284
2315
|
/** Specifies a collation. */
|
|
@@ -2315,7 +2346,14 @@ export declare interface ClientUpdateResult {
|
|
|
2315
2346
|
|
|
2316
2347
|
/** @public */
|
|
2317
2348
|
export declare interface ClientWriteModel {
|
|
2318
|
-
/**
|
|
2349
|
+
/**
|
|
2350
|
+
* The namespace for the write.
|
|
2351
|
+
*
|
|
2352
|
+
* A namespace is a combination of the database name and the name of the collection: `<database-name>.<collection>`.
|
|
2353
|
+
* All documents belong to a namespace.
|
|
2354
|
+
*
|
|
2355
|
+
* @see https://www.mongodb.com/docs/manual/reference/limits/#std-label-faq-dev-namespace
|
|
2356
|
+
*/
|
|
2319
2357
|
namespace: string;
|
|
2320
2358
|
}
|
|
2321
2359
|
|
|
@@ -5237,9 +5275,7 @@ export declare class MongoClient extends TypedEventEmitter<MongoClientEvents> im
|
|
|
5237
5275
|
* @param options - The client bulk write options.
|
|
5238
5276
|
* @returns A ClientBulkWriteResult for acknowledged writes and ok: 1 for unacknowledged writes.
|
|
5239
5277
|
*/
|
|
5240
|
-
bulkWrite(models:
|
|
5241
|
-
ok: 1;
|
|
5242
|
-
}>;
|
|
5278
|
+
bulkWrite<SchemaMap extends Record<string, Document> = Record<string, Document>>(models: ReadonlyArray<ClientBulkWriteModel<SchemaMap>>, options?: ClientBulkWriteOptions): Promise<ClientBulkWriteResult>;
|
|
5243
5279
|
/**
|
|
5244
5280
|
* Connect to MongoDB using a url
|
|
5245
5281
|
*
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
package/src/mongo_client.ts
CHANGED
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
} from './mongo_logger';
|
|
32
32
|
import { TypedEventEmitter } from './mongo_types';
|
|
33
33
|
import {
|
|
34
|
-
type
|
|
34
|
+
type ClientBulkWriteModel,
|
|
35
35
|
type ClientBulkWriteOptions,
|
|
36
36
|
type ClientBulkWriteResult
|
|
37
37
|
} from './operations/client_bulk_write/common';
|
|
@@ -331,7 +331,6 @@ export type MongoClientEvents = Pick<TopologyEvents, (typeof MONGO_CLIENT_EVENTS
|
|
|
331
331
|
};
|
|
332
332
|
|
|
333
333
|
/** @internal */
|
|
334
|
-
|
|
335
334
|
const kOptions = Symbol('options');
|
|
336
335
|
|
|
337
336
|
/**
|
|
@@ -489,16 +488,21 @@ export class MongoClient extends TypedEventEmitter<MongoClientEvents> implements
|
|
|
489
488
|
* @param options - The client bulk write options.
|
|
490
489
|
* @returns A ClientBulkWriteResult for acknowledged writes and ok: 1 for unacknowledged writes.
|
|
491
490
|
*/
|
|
492
|
-
async bulkWrite(
|
|
493
|
-
models:
|
|
491
|
+
async bulkWrite<SchemaMap extends Record<string, Document> = Record<string, Document>>(
|
|
492
|
+
models: ReadonlyArray<ClientBulkWriteModel<SchemaMap>>,
|
|
494
493
|
options?: ClientBulkWriteOptions
|
|
495
|
-
): Promise<ClientBulkWriteResult
|
|
494
|
+
): Promise<ClientBulkWriteResult> {
|
|
496
495
|
if (this.autoEncrypter) {
|
|
497
496
|
throw new MongoInvalidArgumentError(
|
|
498
497
|
'MongoClient bulkWrite does not currently support automatic encryption.'
|
|
499
498
|
);
|
|
500
499
|
}
|
|
501
|
-
|
|
500
|
+
// We do not need schema type information past this point ("as any" is fine)
|
|
501
|
+
return await new ClientBulkWriteExecutor(
|
|
502
|
+
this,
|
|
503
|
+
models as any,
|
|
504
|
+
resolveOptions(this, options)
|
|
505
|
+
).execute();
|
|
502
506
|
}
|
|
503
507
|
|
|
504
508
|
/**
|
|
@@ -36,7 +36,7 @@ const MESSAGE_OVERHEAD_BYTES = 1000;
|
|
|
36
36
|
|
|
37
37
|
/** @internal */
|
|
38
38
|
export class ClientBulkWriteCommandBuilder {
|
|
39
|
-
models: AnyClientBulkWriteModel
|
|
39
|
+
models: ReadonlyArray<AnyClientBulkWriteModel<Document>>;
|
|
40
40
|
options: ClientBulkWriteOptions;
|
|
41
41
|
pkFactory: PkFactory;
|
|
42
42
|
/** The current index in the models array that is being processed. */
|
|
@@ -53,7 +53,7 @@ export class ClientBulkWriteCommandBuilder {
|
|
|
53
53
|
* @param models - The client write models.
|
|
54
54
|
*/
|
|
55
55
|
constructor(
|
|
56
|
-
models: AnyClientBulkWriteModel
|
|
56
|
+
models: ReadonlyArray<AnyClientBulkWriteModel<Document>>,
|
|
57
57
|
options: ClientBulkWriteOptions,
|
|
58
58
|
pkFactory?: PkFactory
|
|
59
59
|
) {
|
|
@@ -248,7 +248,7 @@ interface ClientInsertOperation {
|
|
|
248
248
|
* @returns the operation.
|
|
249
249
|
*/
|
|
250
250
|
export const buildInsertOneOperation = (
|
|
251
|
-
model: ClientInsertOneModel
|
|
251
|
+
model: ClientInsertOneModel<Document>,
|
|
252
252
|
index: number,
|
|
253
253
|
pkFactory: PkFactory
|
|
254
254
|
): ClientInsertOperation => {
|
|
@@ -275,7 +275,10 @@ export interface ClientDeleteOperation {
|
|
|
275
275
|
* @param index - The namespace index.
|
|
276
276
|
* @returns the operation.
|
|
277
277
|
*/
|
|
278
|
-
export const buildDeleteOneOperation = (
|
|
278
|
+
export const buildDeleteOneOperation = (
|
|
279
|
+
model: ClientDeleteOneModel<Document>,
|
|
280
|
+
index: number
|
|
281
|
+
): Document => {
|
|
279
282
|
return createDeleteOperation(model, index, false);
|
|
280
283
|
};
|
|
281
284
|
|
|
@@ -285,7 +288,10 @@ export const buildDeleteOneOperation = (model: ClientDeleteOneModel, index: numb
|
|
|
285
288
|
* @param index - The namespace index.
|
|
286
289
|
* @returns the operation.
|
|
287
290
|
*/
|
|
288
|
-
export const buildDeleteManyOperation = (
|
|
291
|
+
export const buildDeleteManyOperation = (
|
|
292
|
+
model: ClientDeleteManyModel<Document>,
|
|
293
|
+
index: number
|
|
294
|
+
): Document => {
|
|
289
295
|
return createDeleteOperation(model, index, true);
|
|
290
296
|
};
|
|
291
297
|
|
|
@@ -293,7 +299,7 @@ export const buildDeleteManyOperation = (model: ClientDeleteManyModel, index: nu
|
|
|
293
299
|
* Creates a delete operation based on the parameters.
|
|
294
300
|
*/
|
|
295
301
|
function createDeleteOperation(
|
|
296
|
-
model: ClientDeleteOneModel | ClientDeleteManyModel
|
|
302
|
+
model: ClientDeleteOneModel<Document> | ClientDeleteManyModel<Document>,
|
|
297
303
|
index: number,
|
|
298
304
|
multi: boolean
|
|
299
305
|
): ClientDeleteOperation {
|
|
@@ -330,7 +336,7 @@ export interface ClientUpdateOperation {
|
|
|
330
336
|
* @returns the operation.
|
|
331
337
|
*/
|
|
332
338
|
export const buildUpdateOneOperation = (
|
|
333
|
-
model: ClientUpdateOneModel
|
|
339
|
+
model: ClientUpdateOneModel<Document>,
|
|
334
340
|
index: number
|
|
335
341
|
): ClientUpdateOperation => {
|
|
336
342
|
return createUpdateOperation(model, index, false);
|
|
@@ -343,7 +349,7 @@ export const buildUpdateOneOperation = (
|
|
|
343
349
|
* @returns the operation.
|
|
344
350
|
*/
|
|
345
351
|
export const buildUpdateManyOperation = (
|
|
346
|
-
model: ClientUpdateManyModel
|
|
352
|
+
model: ClientUpdateManyModel<Document>,
|
|
347
353
|
index: number
|
|
348
354
|
): ClientUpdateOperation => {
|
|
349
355
|
return createUpdateOperation(model, index, true);
|
|
@@ -365,7 +371,7 @@ function validateUpdate(update: Document) {
|
|
|
365
371
|
* Creates a delete operation based on the parameters.
|
|
366
372
|
*/
|
|
367
373
|
function createUpdateOperation(
|
|
368
|
-
model: ClientUpdateOneModel | ClientUpdateManyModel
|
|
374
|
+
model: ClientUpdateOneModel<Document> | ClientUpdateManyModel<Document>,
|
|
369
375
|
index: number,
|
|
370
376
|
multi: boolean
|
|
371
377
|
): ClientUpdateOperation {
|
|
@@ -413,7 +419,7 @@ export interface ClientReplaceOneOperation {
|
|
|
413
419
|
* @returns the operation.
|
|
414
420
|
*/
|
|
415
421
|
export const buildReplaceOneOperation = (
|
|
416
|
-
model: ClientReplaceOneModel
|
|
422
|
+
model: ClientReplaceOneModel<Document>,
|
|
417
423
|
index: number
|
|
418
424
|
): ClientReplaceOneOperation => {
|
|
419
425
|
if (hasAtomicOperators(model.replacement)) {
|
|
@@ -442,7 +448,7 @@ export const buildReplaceOneOperation = (
|
|
|
442
448
|
|
|
443
449
|
/** @internal */
|
|
444
450
|
export function buildOperation(
|
|
445
|
-
model: AnyClientBulkWriteModel
|
|
451
|
+
model: AnyClientBulkWriteModel<Document>,
|
|
446
452
|
index: number,
|
|
447
453
|
pkFactory: PkFactory
|
|
448
454
|
): Document {
|
|
@@ -27,25 +27,32 @@ export interface ClientBulkWriteOptions extends CommandOperationOptions {
|
|
|
27
27
|
|
|
28
28
|
/** @public */
|
|
29
29
|
export interface ClientWriteModel {
|
|
30
|
-
/**
|
|
30
|
+
/**
|
|
31
|
+
* The namespace for the write.
|
|
32
|
+
*
|
|
33
|
+
* A namespace is a combination of the database name and the name of the collection: `<database-name>.<collection>`.
|
|
34
|
+
* All documents belong to a namespace.
|
|
35
|
+
*
|
|
36
|
+
* @see https://www.mongodb.com/docs/manual/reference/limits/#std-label-faq-dev-namespace
|
|
37
|
+
*/
|
|
31
38
|
namespace: string;
|
|
32
39
|
}
|
|
33
40
|
|
|
34
41
|
/** @public */
|
|
35
|
-
export interface ClientInsertOneModel extends ClientWriteModel {
|
|
42
|
+
export interface ClientInsertOneModel<TSchema> extends ClientWriteModel {
|
|
36
43
|
name: 'insertOne';
|
|
37
44
|
/** The document to insert. */
|
|
38
|
-
document: OptionalId<
|
|
45
|
+
document: OptionalId<TSchema>;
|
|
39
46
|
}
|
|
40
47
|
|
|
41
48
|
/** @public */
|
|
42
|
-
export interface ClientDeleteOneModel extends ClientWriteModel {
|
|
49
|
+
export interface ClientDeleteOneModel<TSchema> extends ClientWriteModel {
|
|
43
50
|
name: 'deleteOne';
|
|
44
51
|
/**
|
|
45
52
|
* The filter used to determine if a document should be deleted.
|
|
46
53
|
* For a deleteOne operation, the first match is removed.
|
|
47
54
|
*/
|
|
48
|
-
filter: Filter<
|
|
55
|
+
filter: Filter<TSchema>;
|
|
49
56
|
/** Specifies a collation. */
|
|
50
57
|
collation?: CollationOptions;
|
|
51
58
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -53,13 +60,13 @@ export interface ClientDeleteOneModel extends ClientWriteModel {
|
|
|
53
60
|
}
|
|
54
61
|
|
|
55
62
|
/** @public */
|
|
56
|
-
export interface ClientDeleteManyModel extends ClientWriteModel {
|
|
63
|
+
export interface ClientDeleteManyModel<TSchema> extends ClientWriteModel {
|
|
57
64
|
name: 'deleteMany';
|
|
58
65
|
/**
|
|
59
66
|
* The filter used to determine if a document should be deleted.
|
|
60
67
|
* For a deleteMany operation, all matches are removed.
|
|
61
68
|
*/
|
|
62
|
-
filter: Filter<
|
|
69
|
+
filter: Filter<TSchema>;
|
|
63
70
|
/** Specifies a collation. */
|
|
64
71
|
collation?: CollationOptions;
|
|
65
72
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -67,15 +74,15 @@ export interface ClientDeleteManyModel extends ClientWriteModel {
|
|
|
67
74
|
}
|
|
68
75
|
|
|
69
76
|
/** @public */
|
|
70
|
-
export interface ClientReplaceOneModel extends ClientWriteModel {
|
|
77
|
+
export interface ClientReplaceOneModel<TSchema> extends ClientWriteModel {
|
|
71
78
|
name: 'replaceOne';
|
|
72
79
|
/**
|
|
73
80
|
* The filter used to determine if a document should be replaced.
|
|
74
81
|
* For a replaceOne operation, the first match is replaced.
|
|
75
82
|
*/
|
|
76
|
-
filter: Filter<
|
|
83
|
+
filter: Filter<TSchema>;
|
|
77
84
|
/** The document with which to replace the matched document. */
|
|
78
|
-
replacement: WithoutId<
|
|
85
|
+
replacement: WithoutId<TSchema>;
|
|
79
86
|
/** Specifies a collation. */
|
|
80
87
|
collation?: CollationOptions;
|
|
81
88
|
/** The index to use. If specified, then the query system will only consider plans using the hinted index. */
|
|
@@ -85,19 +92,19 @@ export interface ClientReplaceOneModel extends ClientWriteModel {
|
|
|
85
92
|
}
|
|
86
93
|
|
|
87
94
|
/** @public */
|
|
88
|
-
export interface ClientUpdateOneModel extends ClientWriteModel {
|
|
95
|
+
export interface ClientUpdateOneModel<TSchema> extends ClientWriteModel {
|
|
89
96
|
name: 'updateOne';
|
|
90
97
|
/**
|
|
91
98
|
* The filter used to determine if a document should be updated.
|
|
92
99
|
* For an updateOne operation, the first match is updated.
|
|
93
100
|
*/
|
|
94
|
-
filter: Filter<
|
|
101
|
+
filter: Filter<TSchema>;
|
|
95
102
|
/**
|
|
96
103
|
* The modifications to apply. The value can be either:
|
|
97
104
|
* UpdateFilter<Document> - A document that contains update operator expressions,
|
|
98
105
|
* Document[] - an aggregation pipeline.
|
|
99
106
|
*/
|
|
100
|
-
update: UpdateFilter<
|
|
107
|
+
update: UpdateFilter<TSchema> | Document[];
|
|
101
108
|
/** A set of filters specifying to which array elements an update should apply. */
|
|
102
109
|
arrayFilters?: Document[];
|
|
103
110
|
/** Specifies a collation. */
|
|
@@ -109,19 +116,19 @@ export interface ClientUpdateOneModel extends ClientWriteModel {
|
|
|
109
116
|
}
|
|
110
117
|
|
|
111
118
|
/** @public */
|
|
112
|
-
export interface ClientUpdateManyModel extends ClientWriteModel {
|
|
119
|
+
export interface ClientUpdateManyModel<TSchema> extends ClientWriteModel {
|
|
113
120
|
name: 'updateMany';
|
|
114
121
|
/**
|
|
115
122
|
* The filter used to determine if a document should be updated.
|
|
116
123
|
* For an updateMany operation, all matches are updated.
|
|
117
124
|
*/
|
|
118
|
-
filter: Filter<
|
|
125
|
+
filter: Filter<TSchema>;
|
|
119
126
|
/**
|
|
120
127
|
* The modifications to apply. The value can be either:
|
|
121
128
|
* UpdateFilter<Document> - A document that contains update operator expressions,
|
|
122
129
|
* Document[] - an aggregation pipeline.
|
|
123
130
|
*/
|
|
124
|
-
update: UpdateFilter<
|
|
131
|
+
update: UpdateFilter<TSchema> | Document[];
|
|
125
132
|
/** A set of filters specifying to which array elements an update should apply. */
|
|
126
133
|
arrayFilters?: Document[];
|
|
127
134
|
/** Specifies a collation. */
|
|
@@ -137,48 +144,81 @@ export interface ClientUpdateManyModel extends ClientWriteModel {
|
|
|
137
144
|
* to MongoClient#bulkWrite.
|
|
138
145
|
* @public
|
|
139
146
|
*/
|
|
140
|
-
export type AnyClientBulkWriteModel =
|
|
141
|
-
| ClientInsertOneModel
|
|
142
|
-
| ClientReplaceOneModel
|
|
143
|
-
| ClientUpdateOneModel
|
|
144
|
-
| ClientUpdateManyModel
|
|
145
|
-
| ClientDeleteOneModel
|
|
146
|
-
| ClientDeleteManyModel
|
|
147
|
+
export type AnyClientBulkWriteModel<TSchema extends Document> =
|
|
148
|
+
| ClientInsertOneModel<TSchema>
|
|
149
|
+
| ClientReplaceOneModel<TSchema>
|
|
150
|
+
| ClientUpdateOneModel<TSchema>
|
|
151
|
+
| ClientUpdateManyModel<TSchema>
|
|
152
|
+
| ClientDeleteOneModel<TSchema>
|
|
153
|
+
| ClientDeleteManyModel<TSchema>;
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* A mapping of namespace strings to collections schemas.
|
|
157
|
+
* @public
|
|
158
|
+
*
|
|
159
|
+
* @example
|
|
160
|
+
* ```ts
|
|
161
|
+
* type MongoDBSchemas = {
|
|
162
|
+
* 'db.books': Book;
|
|
163
|
+
* 'db.authors': Author;
|
|
164
|
+
* }
|
|
165
|
+
*
|
|
166
|
+
* const model: ClientBulkWriteModel<MongoDBSchemas> = {
|
|
167
|
+
* namespace: 'db.books'
|
|
168
|
+
* name: 'insertOne',
|
|
169
|
+
* document: { title: 'Practical MongoDB Aggregations', authorName: 3 } // error `authorName` cannot be number
|
|
170
|
+
* };
|
|
171
|
+
* ```
|
|
172
|
+
*
|
|
173
|
+
* The type of the `namespace` field narrows other parts of the BulkWriteModel to use the correct schema for type assertions.
|
|
174
|
+
*
|
|
175
|
+
*/
|
|
176
|
+
export type ClientBulkWriteModel<
|
|
177
|
+
SchemaMap extends Record<string, Document> = Record<string, Document>
|
|
178
|
+
> = {
|
|
179
|
+
[Namespace in keyof SchemaMap]: AnyClientBulkWriteModel<SchemaMap[Namespace]> & {
|
|
180
|
+
namespace: Namespace;
|
|
181
|
+
};
|
|
182
|
+
}[keyof SchemaMap];
|
|
147
183
|
|
|
148
184
|
/** @public */
|
|
149
185
|
export interface ClientBulkWriteResult {
|
|
186
|
+
/**
|
|
187
|
+
* Whether the bulk write was acknowledged.
|
|
188
|
+
*/
|
|
189
|
+
readonly acknowledged: boolean;
|
|
150
190
|
/**
|
|
151
191
|
* The total number of documents inserted across all insert operations.
|
|
152
192
|
*/
|
|
153
|
-
insertedCount: number;
|
|
193
|
+
readonly insertedCount: number;
|
|
154
194
|
/**
|
|
155
195
|
* The total number of documents upserted across all update operations.
|
|
156
196
|
*/
|
|
157
|
-
upsertedCount: number;
|
|
197
|
+
readonly upsertedCount: number;
|
|
158
198
|
/**
|
|
159
199
|
* The total number of documents matched across all update operations.
|
|
160
200
|
*/
|
|
161
|
-
matchedCount: number;
|
|
201
|
+
readonly matchedCount: number;
|
|
162
202
|
/**
|
|
163
203
|
* The total number of documents modified across all update operations.
|
|
164
204
|
*/
|
|
165
|
-
modifiedCount: number;
|
|
205
|
+
readonly modifiedCount: number;
|
|
166
206
|
/**
|
|
167
207
|
* The total number of documents deleted across all delete operations.
|
|
168
208
|
*/
|
|
169
|
-
deletedCount: number;
|
|
209
|
+
readonly deletedCount: number;
|
|
170
210
|
/**
|
|
171
211
|
* The results of each individual insert operation that was successfully performed.
|
|
172
212
|
*/
|
|
173
|
-
insertResults?:
|
|
213
|
+
readonly insertResults?: ReadonlyMap<number, ClientInsertOneResult>;
|
|
174
214
|
/**
|
|
175
215
|
* The results of each individual update operation that was successfully performed.
|
|
176
216
|
*/
|
|
177
|
-
updateResults?:
|
|
217
|
+
readonly updateResults?: ReadonlyMap<number, ClientUpdateResult>;
|
|
178
218
|
/**
|
|
179
219
|
* The results of each individual delete operation that was successfully performed.
|
|
180
220
|
*/
|
|
181
|
-
deleteResults?:
|
|
221
|
+
readonly deleteResults?: ReadonlyMap<number, ClientDeleteResult>;
|
|
182
222
|
}
|
|
183
223
|
|
|
184
224
|
/** @public */
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { type Document } from 'bson';
|
|
2
|
+
|
|
1
3
|
import { ClientBulkWriteCursor } from '../../cursor/client_bulk_write_cursor';
|
|
2
4
|
import {
|
|
3
5
|
MongoClientBulkWriteError,
|
|
@@ -22,9 +24,9 @@ import { ClientBulkWriteResultsMerger } from './results_merger';
|
|
|
22
24
|
* @internal
|
|
23
25
|
*/
|
|
24
26
|
export class ClientBulkWriteExecutor {
|
|
25
|
-
client: MongoClient;
|
|
26
|
-
options: ClientBulkWriteOptions;
|
|
27
|
-
operations: AnyClientBulkWriteModel
|
|
27
|
+
private readonly client: MongoClient;
|
|
28
|
+
private readonly options: ClientBulkWriteOptions;
|
|
29
|
+
private readonly operations: ReadonlyArray<AnyClientBulkWriteModel<Document>>;
|
|
28
30
|
|
|
29
31
|
/**
|
|
30
32
|
* Instantiate the executor.
|
|
@@ -34,7 +36,7 @@ export class ClientBulkWriteExecutor {
|
|
|
34
36
|
*/
|
|
35
37
|
constructor(
|
|
36
38
|
client: MongoClient,
|
|
37
|
-
operations: AnyClientBulkWriteModel
|
|
39
|
+
operations: ReadonlyArray<AnyClientBulkWriteModel<Document>>,
|
|
38
40
|
options?: ClientBulkWriteOptions
|
|
39
41
|
) {
|
|
40
42
|
if (operations.length === 0) {
|
|
@@ -75,7 +77,7 @@ export class ClientBulkWriteExecutor {
|
|
|
75
77
|
* for each, then merge the results into one.
|
|
76
78
|
* @returns The result.
|
|
77
79
|
*/
|
|
78
|
-
async execute(): Promise<ClientBulkWriteResult
|
|
80
|
+
async execute(): Promise<ClientBulkWriteResult> {
|
|
79
81
|
// The command builder will take the user provided models and potential split the batch
|
|
80
82
|
// into multiple commands due to size.
|
|
81
83
|
const pkFactory = this.client.s.options.pkFactory;
|
|
@@ -90,7 +92,7 @@ export class ClientBulkWriteExecutor {
|
|
|
90
92
|
const operation = new ClientBulkWriteOperation(commandBuilder, this.options);
|
|
91
93
|
await executeOperation(this.client, operation);
|
|
92
94
|
}
|
|
93
|
-
return
|
|
95
|
+
return ClientBulkWriteResultsMerger.unacknowledged();
|
|
94
96
|
} else {
|
|
95
97
|
const resultsMerger = new ClientBulkWriteResultsMerger(this.options);
|
|
96
98
|
// For each command will will create and exhaust a cursor for the results.
|
|
@@ -110,7 +112,7 @@ export class ClientBulkWriteExecutor {
|
|
|
110
112
|
message: 'Mongo client bulk write encountered an error during execution'
|
|
111
113
|
});
|
|
112
114
|
bulkWriteError.cause = error;
|
|
113
|
-
bulkWriteError.partialResult = resultsMerger.
|
|
115
|
+
bulkWriteError.partialResult = resultsMerger.bulkWriteResult;
|
|
114
116
|
throw bulkWriteError;
|
|
115
117
|
} else {
|
|
116
118
|
// Client side errors are just thrown.
|
|
@@ -126,11 +128,11 @@ export class ClientBulkWriteExecutor {
|
|
|
126
128
|
});
|
|
127
129
|
error.writeConcernErrors = resultsMerger.writeConcernErrors;
|
|
128
130
|
error.writeErrors = resultsMerger.writeErrors;
|
|
129
|
-
error.partialResult = resultsMerger.
|
|
131
|
+
error.partialResult = resultsMerger.bulkWriteResult;
|
|
130
132
|
throw error;
|
|
131
133
|
}
|
|
132
134
|
|
|
133
|
-
return resultsMerger.
|
|
135
|
+
return resultsMerger.bulkWriteResult;
|
|
134
136
|
}
|
|
135
137
|
}
|
|
136
138
|
}
|
|
@@ -11,17 +11,78 @@ import {
|
|
|
11
11
|
type ClientUpdateResult
|
|
12
12
|
} from './common';
|
|
13
13
|
|
|
14
|
+
/**
|
|
15
|
+
* Unacknowledged bulk writes are always the same.
|
|
16
|
+
*/
|
|
17
|
+
const UNACKNOWLEDGED = {
|
|
18
|
+
acknowledged: false,
|
|
19
|
+
insertedCount: 0,
|
|
20
|
+
upsertedCount: 0,
|
|
21
|
+
matchedCount: 0,
|
|
22
|
+
modifiedCount: 0,
|
|
23
|
+
deletedCount: 0,
|
|
24
|
+
insertResults: undefined,
|
|
25
|
+
updateResults: undefined,
|
|
26
|
+
deleteResults: undefined
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
interface ClientBulkWriteResultAccumulation {
|
|
30
|
+
/**
|
|
31
|
+
* Whether the bulk write was acknowledged.
|
|
32
|
+
*/
|
|
33
|
+
acknowledged: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* The total number of documents inserted across all insert operations.
|
|
36
|
+
*/
|
|
37
|
+
insertedCount: number;
|
|
38
|
+
/**
|
|
39
|
+
* The total number of documents upserted across all update operations.
|
|
40
|
+
*/
|
|
41
|
+
upsertedCount: number;
|
|
42
|
+
/**
|
|
43
|
+
* The total number of documents matched across all update operations.
|
|
44
|
+
*/
|
|
45
|
+
matchedCount: number;
|
|
46
|
+
/**
|
|
47
|
+
* The total number of documents modified across all update operations.
|
|
48
|
+
*/
|
|
49
|
+
modifiedCount: number;
|
|
50
|
+
/**
|
|
51
|
+
* The total number of documents deleted across all delete operations.
|
|
52
|
+
*/
|
|
53
|
+
deletedCount: number;
|
|
54
|
+
/**
|
|
55
|
+
* The results of each individual insert operation that was successfully performed.
|
|
56
|
+
*/
|
|
57
|
+
insertResults?: Map<number, ClientInsertOneResult>;
|
|
58
|
+
/**
|
|
59
|
+
* The results of each individual update operation that was successfully performed.
|
|
60
|
+
*/
|
|
61
|
+
updateResults?: Map<number, ClientUpdateResult>;
|
|
62
|
+
/**
|
|
63
|
+
* The results of each individual delete operation that was successfully performed.
|
|
64
|
+
*/
|
|
65
|
+
deleteResults?: Map<number, ClientDeleteResult>;
|
|
66
|
+
}
|
|
67
|
+
|
|
14
68
|
/**
|
|
15
69
|
* Merges client bulk write cursor responses together into a single result.
|
|
16
70
|
* @internal
|
|
17
71
|
*/
|
|
18
72
|
export class ClientBulkWriteResultsMerger {
|
|
19
|
-
result:
|
|
20
|
-
options: ClientBulkWriteOptions;
|
|
21
|
-
currentBatchOffset: number;
|
|
73
|
+
private result: ClientBulkWriteResultAccumulation;
|
|
74
|
+
private options: ClientBulkWriteOptions;
|
|
75
|
+
private currentBatchOffset: number;
|
|
22
76
|
writeConcernErrors: Document[];
|
|
23
77
|
writeErrors: Map<number, ClientBulkWriteError>;
|
|
24
78
|
|
|
79
|
+
/**
|
|
80
|
+
* @returns The standard unacknowledged bulk write result.
|
|
81
|
+
*/
|
|
82
|
+
static unacknowledged(): ClientBulkWriteResult {
|
|
83
|
+
return UNACKNOWLEDGED;
|
|
84
|
+
}
|
|
85
|
+
|
|
25
86
|
/**
|
|
26
87
|
* Instantiate the merger.
|
|
27
88
|
* @param options - The options.
|
|
@@ -32,6 +93,7 @@ export class ClientBulkWriteResultsMerger {
|
|
|
32
93
|
this.writeConcernErrors = [];
|
|
33
94
|
this.writeErrors = new Map();
|
|
34
95
|
this.result = {
|
|
96
|
+
acknowledged: true,
|
|
35
97
|
insertedCount: 0,
|
|
36
98
|
upsertedCount: 0,
|
|
37
99
|
matchedCount: 0,
|
|
@@ -49,6 +111,23 @@ export class ClientBulkWriteResultsMerger {
|
|
|
49
111
|
}
|
|
50
112
|
}
|
|
51
113
|
|
|
114
|
+
/**
|
|
115
|
+
* Get the bulk write result object.
|
|
116
|
+
*/
|
|
117
|
+
get bulkWriteResult(): ClientBulkWriteResult {
|
|
118
|
+
return {
|
|
119
|
+
acknowledged: this.result.acknowledged,
|
|
120
|
+
insertedCount: this.result.insertedCount,
|
|
121
|
+
upsertedCount: this.result.upsertedCount,
|
|
122
|
+
matchedCount: this.result.matchedCount,
|
|
123
|
+
modifiedCount: this.result.modifiedCount,
|
|
124
|
+
deletedCount: this.result.deletedCount,
|
|
125
|
+
insertResults: this.result.insertResults,
|
|
126
|
+
updateResults: this.result.updateResults,
|
|
127
|
+
deleteResults: this.result.deleteResults
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
|
|
52
131
|
/**
|
|
53
132
|
* Merge the results in the cursor to the existing result.
|
|
54
133
|
* @param currentBatchOffset - The offset index to the original models.
|