@lossless.org/client 1.23.0 → 1.23.2
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/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/nosqldb/classes.atomicdelete.js +3 -3
- package/dist_ts/nosqldb/classes.atomicfindoneandupdate.js +12 -5
- package/dist_ts/nosqldb/classes.atomicupdate.js +4 -4
- package/dist_ts/nosqldb/classes.collection.js +3 -3
- package/dist_ts/nosqldb/classes.db.js +4 -7
- package/dist_ts/nosqldb/classes.exactpersistence.js +3 -3
- package/dist_ts/nosqldb/classes.readtracker.d.ts +6 -0
- package/dist_ts/nosqldb/classes.readtracker.js +10 -1
- package/dist_ts/nosqldb/classes.session.d.ts +5 -2
- package/dist_ts/nosqldb/classes.session.js +29 -17
- package/dist_ts/nosqldb/classes.writerevisions.d.ts +39 -17
- package/dist_ts/nosqldb/classes.writerevisions.js +163 -126
- package/package.json +1 -1
- package/readme.md +1 -1
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/nosqldb/classes.atomicdelete.ts +2 -2
- package/ts/nosqldb/classes.atomicfindoneandupdate.ts +11 -6
- package/ts/nosqldb/classes.atomicupdate.ts +3 -4
- package/ts/nosqldb/classes.collection.ts +2 -2
- package/ts/nosqldb/classes.db.ts +2 -6
- package/ts/nosqldb/classes.exactpersistence.ts +2 -2
- package/ts/nosqldb/classes.readtracker.ts +10 -0
- package/ts/nosqldb/classes.session.ts +33 -18
- package/ts/nosqldb/classes.writerevisions.ts +214 -156
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@lossless.org/client',
|
|
6
|
-
version: '1.23.
|
|
6
|
+
version: '1.23.2',
|
|
7
7
|
description: 'One typed client for NoSQLDB, MongoDB, SQLDB, MariaDB, ClickHouse and S3 object storage.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxzQkFBc0I7SUFDNUIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLDBGQUEwRjtDQUN4RyxDQUFBIn0=
|
|
@@ -16,7 +16,7 @@ export const executeAtomicDelete = async (collectionArg, filterArg, optsArg) =>
|
|
|
16
16
|
timeoutMS: optsArg?.timeoutMS,
|
|
17
17
|
}, async (rawSessionArg, deadlineArg) => {
|
|
18
18
|
await deadlineArg.join(collectionArg.init());
|
|
19
|
-
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg
|
|
19
|
+
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg, rawSessionArg, filterArg, deadlineArg);
|
|
20
20
|
const result = await collectionArg.mongoDbCollection.deleteOne(filterArg, {
|
|
21
21
|
session: rawSessionArg,
|
|
22
22
|
...deadlineArg.commandOptions(),
|
|
@@ -45,7 +45,7 @@ export const executeAtomicDeleteMany = async (collectionArg, filterArg, optsArg)
|
|
|
45
45
|
signal: optsArg?.signal,
|
|
46
46
|
}, async (rawSessionArg, deadlineArg) => {
|
|
47
47
|
await deadlineArg.join(collectionArg.init());
|
|
48
|
-
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg
|
|
48
|
+
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg, rawSessionArg, filterArg, deadlineArg);
|
|
49
49
|
const result = await collectionArg.mongoDbCollection.deleteMany(filterArg, {
|
|
50
50
|
session: rawSessionArg,
|
|
51
51
|
...deadlineArg.commandOptions(),
|
|
@@ -56,4 +56,4 @@ export const executeAtomicDeleteMany = async (collectionArg, filterArg, optsArg)
|
|
|
56
56
|
return result;
|
|
57
57
|
});
|
|
58
58
|
};
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5hdG9taWNkZWxldGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9ub3NxbGRiL2NsYXNzZXMuYXRvbWljZGVsZXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBRXhDLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIsOEJBQThCLEVBQzlCLCtCQUErQixHQUVoQyxNQUFNLHNCQUFzQixDQUFDO0FBRTlCOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEtBQUssRUFDdEMsYUFBcUMsRUFDckMsU0FBMkQsRUFDM0QsT0FHQyxFQUNzQyxFQUFFO0lBQ3pDLE9BQU8sK0JBQStCLENBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQ2hCLGFBQWEsQ0FBQyxXQUFXLEVBQ3pCO1FBQ0UsYUFBYSxFQUFFLElBQUk7UUFDbkIsUUFBUSxFQUFFLGFBQWEsQ0FBQywrQkFBK0IsRUFBRTtRQUN6RCxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRTtRQUNuQyxjQUFjLEVBQUUsYUFBYSxDQUFDLGNBQWM7UUFDNUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTO0tBQzlCLEVBQ0QsS0FBSyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsRUFBRTtRQUNuQyxNQUFNLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDN0MsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLDBCQUEwQixDQUM3RCxhQUFhLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQ3JELENBQUM7UUFDRixNQUFNLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQzVELFNBQVMsRUFDVDtZQUNFLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLEdBQUcsV0FBVyxDQUFDLGNBQWMsRUFBRTtTQUNoQyxDQUNGLENBQUM7UUFDRixJQUFJLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDNUIsOEJBQThCLENBQzVCLGFBQWEsRUFDYixPQUFPLEVBQUUsT0FBTyxFQUNoQixRQUFRLEVBQ1IsSUFBSSxFQUNKLFNBQVMsRUFDVCxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQ2xGLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxFQUMxQyxhQUFxQyxFQUNyQyxTQUEyRCxFQUMzRCxPQUlDLEVBQ3NDLEVBQUU7SUFDekMsT0FBTywrQkFBK0IsQ0FDcEMsT0FBTyxFQUFFLE9BQU8sRUFDaEIsYUFBYSxDQUFDLFdBQVcsRUFDekI7UUFDRSxhQUFhLEVBQUUsSUFBSTtRQUNuQixRQUFRLEVBQUUsYUFBYSxDQUFDLCtCQUErQixFQUFFO1FBQ3pELE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1FBQ25DLGNBQWMsRUFBRSxhQUFhLENBQUMsY0FBYztRQUM1QyxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVM7UUFDN0IsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNO0tBQ3hCLEVBQ0QsS0FBSyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsRUFBRTtRQUNuQyxNQUFNLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDN0MsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLDBCQUEwQixDQUM3RCxhQUFhLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQ3JELENBQUM7UUFDRixNQUFNLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQzdELFNBQVMsRUFDVDtZQUNFLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLEdBQUcsV0FBVyxDQUFDLGNBQWMsRUFBRTtTQUNoQyxDQUNGLENBQUM7UUFDRixJQUFJLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDNUIsOEJBQThCLENBQzVCLGFBQWEsRUFDYixPQUFPLEVBQUUsT0FBTyxFQUNoQixRQUFRLEVBQ1IsSUFBSSxFQUNKLFNBQVMsRUFDVCxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQ2xGLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUNGLENBQUM7QUFDSixDQUFDLENBQUMifQ==
|
|
@@ -2,6 +2,8 @@ import * as plugins from './plugins.js';
|
|
|
2
2
|
import { normalizeOrdinaryPersistenceError, SmartdataPersistenceError, } from './classes.persistence.js';
|
|
3
3
|
import { readPreviousWriteRevisions, reportSmartdataCollectionWrite, runWithOrdinarySmartdataSession, isOrdinarySessionInTransaction, isSmartdataSession, failSmartdataTransaction, } from './classes.session.js';
|
|
4
4
|
import { validateOrdinaryStoredDocument } from './classes.ordinarypersistence.js';
|
|
5
|
+
import { updateLeavesField } from './classes.readtracker.js';
|
|
6
|
+
import { writeRevisionsPartitionField } from './classes.writerevisions.js';
|
|
5
7
|
const unsupportedResult = () => {
|
|
6
8
|
throw new SmartdataPersistenceError('unsupported_operation', 'MongoDB returned unsupported atomic find-one-and-update metadata.');
|
|
7
9
|
};
|
|
@@ -63,9 +65,14 @@ export const executeAtomicFindOneAndUpdate = async (collectionArg, filterArg, up
|
|
|
63
65
|
}
|
|
64
66
|
await deadlineArg.join(collectionArg.init());
|
|
65
67
|
try {
|
|
66
|
-
// A before image states the document's previous partition itself
|
|
67
|
-
|
|
68
|
-
|
|
68
|
+
// A before image states the document's previous partition itself, and
|
|
69
|
+
// so does an after image of an update that leaves the partition field
|
|
70
|
+
// alone: the field holds afterwards what it held before.
|
|
71
|
+
const partitionField = writeRevisionsPartitionField(collectionArg.smartdataDb);
|
|
72
|
+
const imageStatesPreviousPartition = optionsArg.returnDocument === 'before'
|
|
73
|
+
|| (partitionField !== undefined && updateLeavesField(updateArg, partitionField));
|
|
74
|
+
const previousPartitionsRead = !imageStatesPreviousPartition
|
|
75
|
+
&& await readPreviousWriteRevisions(collectionArg, rawSessionArg, filterArg, deadlineArg);
|
|
69
76
|
const result = await collectionArg.mongoDbCollection.findOneAndUpdate(filterArg, updateArg, {
|
|
70
77
|
includeResultMetadata: true,
|
|
71
78
|
returnDocument: optionsArg.returnDocument,
|
|
@@ -125,7 +132,7 @@ export const executeAtomicFindOneAndReplace = async (collectionArg, filterArg, r
|
|
|
125
132
|
await deadlineArg.join(collectionArg.init());
|
|
126
133
|
try {
|
|
127
134
|
const previousPartitionsRead = optionsArg.returnDocument === 'after'
|
|
128
|
-
&& await readPreviousWriteRevisions(collectionArg
|
|
135
|
+
&& await readPreviousWriteRevisions(collectionArg, rawSessionArg, filterArg, deadlineArg);
|
|
129
136
|
const result = await collectionArg.mongoDbCollection.findOneAndReplace(filterArg, replacementArg, {
|
|
130
137
|
includeResultMetadata: true,
|
|
131
138
|
returnDocument: optionsArg.returnDocument,
|
|
@@ -157,4 +164,4 @@ export const executeAtomicFindOneAndReplace = async (collectionArg, filterArg, r
|
|
|
157
164
|
}
|
|
158
165
|
});
|
|
159
166
|
};
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5hdG9taWNmaW5kb25lYW5kdXBkYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvbm9zcWxkYi9jbGFzc2VzLmF0b21pY2ZpbmRvbmVhbmR1cGRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFFeEMsT0FBTyxFQUNMLGlDQUFpQyxFQUNqQyx5QkFBeUIsR0FDMUIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLDhCQUE4QixFQUM5QiwrQkFBK0IsRUFDL0IsOEJBQThCLEVBQzlCLGtCQUFrQixFQUNsQix3QkFBd0IsR0FHekIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQWEzRSxNQUFNLGlCQUFpQixHQUFHLEdBQVUsRUFBRTtJQUNwQyxNQUFNLElBQUkseUJBQXlCLENBQ2pDLHVCQUF1QixFQUN2QixtRUFBbUUsQ0FDcEUsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUFHLENBQ3JCLFNBQWlFLEVBQ2pFLFVBR0MsRUFDdUMsRUFBRTtJQUMxQyxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsZUFBZSxDQUFDO0lBQzNDLElBQUksU0FBUyxDQUFDLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRO1FBQUUsT0FBTyxpQkFBaUIsRUFBRSxDQUFDO0lBQ2hFLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDL0UsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLFFB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
|
|
@@ -18,7 +18,7 @@ export const executeAtomicUpdate = async (collectionArg, filterArg, updateArg, o
|
|
|
18
18
|
}, async (rawSessionArg, deadlineArg) => {
|
|
19
19
|
await deadlineArg.join(collectionArg.init());
|
|
20
20
|
try {
|
|
21
|
-
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg
|
|
21
|
+
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg, rawSessionArg, filterArg, deadlineArg);
|
|
22
22
|
const result = await collectionArg.mongoDbCollection.updateOne(filterArg, updateArg, {
|
|
23
23
|
upsert: optsArg?.upsert === true,
|
|
24
24
|
session: rawSessionArg,
|
|
@@ -69,7 +69,7 @@ export const executeAtomicUpsertMany = async (collectionArg, operationsArg, opts
|
|
|
69
69
|
});
|
|
70
70
|
};
|
|
71
71
|
try {
|
|
72
|
-
previousPartitionsRead = await readPreviousWriteRevisions(collectionArg
|
|
72
|
+
previousPartitionsRead = await readPreviousWriteRevisions(collectionArg, rawSessionArg, { $or: operationsArg.map((operationArg) => operationArg.filter) }, deadlineArg);
|
|
73
73
|
const result = await collectionArg.mongoDbCollection.bulkWrite(operationsArg.map((operationArg) => ({
|
|
74
74
|
updateOne: {
|
|
75
75
|
filter: operationArg.filter,
|
|
@@ -120,7 +120,7 @@ export const executeAtomicUpdateMany = async (collectionArg, filterArg, updateAr
|
|
|
120
120
|
}, async (rawSessionArg, deadlineArg) => {
|
|
121
121
|
await deadlineArg.join(collectionArg.init());
|
|
122
122
|
try {
|
|
123
|
-
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg
|
|
123
|
+
const previousPartitionsRead = await readPreviousWriteRevisions(collectionArg, rawSessionArg, filterArg, deadlineArg);
|
|
124
124
|
const result = await collectionArg.mongoDbCollection.updateMany(filterArg, updateArg, {
|
|
125
125
|
session: rawSessionArg,
|
|
126
126
|
...deadlineArg.commandOptions(),
|
|
@@ -135,4 +135,4 @@ export const executeAtomicUpdateMany = async (collectionArg, filterArg, updateAr
|
|
|
135
135
|
}
|
|
136
136
|
});
|
|
137
137
|
};
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5hdG9taWN1cGRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9ub3NxbGRiL2NsYXNzZXMuYXRvbWljdXBkYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBRXhDLE9BQU8sRUFDTCw2QkFBNkIsRUFDN0IsaUNBQWlDLEdBQ2xDLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUNMLDBCQUEwQixFQUMxQiw4QkFBOEIsRUFDOUIsK0JBQStCLEdBRWhDLE1BQU0sc0JBQXNCLENBQUM7QUFFOUI7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsS0FBSyxFQUN0QyxhQUFxQyxFQUNyQyxTQUEyRCxFQUMzRCxTQUFpRSxFQUNqRSxPQU1DLEVBQ3NDLEVBQUU7SUFDekMsT0FBTywrQkFBK0IsQ0FDcEMsT0FBTyxFQUFFLE9BQU8sRUFDaEIsYUFBYSxDQUFDLFdBQVcsRUFDekI7UUFDRSxhQUFhLEVBQUUsSUFBSTtRQUNuQixRQUFRLEVBQUUsYUFBYSxDQUFDLCtCQUErQixFQUFFO1FBQ3pELE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1FBQ25DLGNBQWMsRUFBRSxhQUFhLENBQUMsY0FBYztRQUM1QyxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVM7S0FDOUIsRUFDRCxLQUFLLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxFQUFFO1FBQ25DLE1BQU0sV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUM7WUFDSCxNQUFNLHNCQUFzQixHQUFHLE1BQU0sMEJBQTBCLENBQzdELGFBQWEsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FDckQsQ0FBQztZQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sYUFBYSxDQUFDLGlC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
|