joist-core 2.2.0-next.1 → 2.2.0-next.10
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/build/BaseEntity.js +1 -1
- package/build/BaseEntity.js.map +1 -1
- package/build/EntityManager.d.ts +2 -0
- package/build/EntityManager.d.ts.map +1 -1
- package/build/EntityManager.js +158 -89
- package/build/EntityManager.js.map +1 -1
- package/build/EntityMetadata.d.ts +17 -1
- package/build/EntityMetadata.d.ts.map +1 -1
- package/build/EntityMetadata.js.map +1 -1
- package/build/IndexManager.d.ts +2 -2
- package/build/IndexManager.d.ts.map +1 -1
- package/build/IndexManager.js +22 -16
- package/build/IndexManager.js.map +1 -1
- package/build/InstanceData.d.ts +14 -2
- package/build/InstanceData.d.ts.map +1 -1
- package/build/InstanceData.js +34 -3
- package/build/InstanceData.js.map +1 -1
- package/build/IsLoadedCache.d.ts.map +1 -1
- package/build/IsLoadedCache.js +31 -25
- package/build/IsLoadedCache.js.map +1 -1
- package/build/QueryParser.collectionJoins.js +8 -2
- package/build/QueryParser.collectionJoins.js.map +1 -1
- package/build/QueryParser.d.ts +4 -2
- package/build/QueryParser.d.ts.map +1 -1
- package/build/QueryParser.js.map +1 -1
- package/build/QueryParser.pruning.d.ts.map +1 -1
- package/build/QueryParser.pruning.js +8 -1
- package/build/QueryParser.pruning.js.map +1 -1
- package/build/ReactionsManager.d.ts +2 -1
- package/build/ReactionsManager.d.ts.map +1 -1
- package/build/ReactionsManager.js +53 -49
- package/build/ReactionsManager.js.map +1 -1
- package/build/batchloaders/BatchLoader.d.ts.map +1 -1
- package/build/batchloaders/BatchLoader.js +6 -1
- package/build/batchloaders/BatchLoader.js.map +1 -1
- package/build/batchloaders/populateBatchLoader.d.ts.map +1 -1
- package/build/batchloaders/populateBatchLoader.js +2 -1
- package/build/batchloaders/populateBatchLoader.js.map +1 -1
- package/build/configure.d.ts +3 -3
- package/build/configure.d.ts.map +1 -1
- package/build/configure.js +64 -0
- package/build/configure.js.map +1 -1
- package/build/dataloaders/fastWhereFilterHash.d.ts +15 -0
- package/build/dataloaders/fastWhereFilterHash.d.ts.map +1 -0
- package/build/dataloaders/fastWhereFilterHash.js +164 -0
- package/build/dataloaders/fastWhereFilterHash.js.map +1 -0
- package/build/dataloaders/fastWhereFilterHash.test.d.ts +2 -0
- package/build/dataloaders/fastWhereFilterHash.test.d.ts.map +1 -0
- package/build/dataloaders/fastWhereFilterHash.test.js +59 -0
- package/build/dataloaders/fastWhereFilterHash.test.js.map +1 -0
- package/build/dataloaders/findCountDataLoader.d.ts +1 -2
- package/build/dataloaders/findCountDataLoader.d.ts.map +1 -1
- package/build/dataloaders/findCountDataLoader.js +16 -13
- package/build/dataloaders/findCountDataLoader.js.map +1 -1
- package/build/dataloaders/findDataLoader.d.ts +7 -3
- package/build/dataloaders/findDataLoader.d.ts.map +1 -1
- package/build/dataloaders/findDataLoader.js +97 -78
- package/build/dataloaders/findDataLoader.js.map +1 -1
- package/build/dataloaders/findIdsDataLoader.d.ts +1 -2
- package/build/dataloaders/findIdsDataLoader.d.ts.map +1 -1
- package/build/dataloaders/findIdsDataLoader.js +16 -15
- package/build/dataloaders/findIdsDataLoader.js.map +1 -1
- package/build/dataloaders/findOrCreateDataLoader.js +1 -1
- package/build/dataloaders/findOrCreateDataLoader.js.map +1 -1
- package/build/dataloaders/findPaginatedDataLoader.d.ts +1 -2
- package/build/dataloaders/findPaginatedDataLoader.d.ts.map +1 -1
- package/build/dataloaders/findPaginatedDataLoader.js +27 -19
- package/build/dataloaders/findPaginatedDataLoader.js.map +1 -1
- package/build/drivers/EntityWriter.js +13 -7
- package/build/drivers/EntityWriter.js.map +1 -1
- package/build/drivers/buildRawQuery.d.ts.map +1 -1
- package/build/drivers/buildRawQuery.js +5 -1
- package/build/drivers/buildRawQuery.js.map +1 -1
- package/build/fields.d.ts.map +1 -1
- package/build/fields.js +16 -6
- package/build/fields.js.map +1 -1
- package/build/keys.d.ts.map +1 -1
- package/build/keys.js +8 -6
- package/build/keys.js.map +1 -1
- package/build/loadHints.d.ts +9 -0
- package/build/loadHints.d.ts.map +1 -1
- package/build/loadHints.js +63 -9
- package/build/loadHints.js.map +1 -1
- package/build/loadLens.d.ts +11 -0
- package/build/loadLens.d.ts.map +1 -1
- package/build/loadLens.js +24 -7
- package/build/loadLens.js.map +1 -1
- package/build/normalizeHints.d.ts +7 -0
- package/build/normalizeHints.d.ts.map +1 -1
- package/build/normalizeHints.js +40 -2
- package/build/normalizeHints.js.map +1 -1
- package/build/relations/hasOneThrough.d.ts.map +1 -1
- package/build/relations/hasOneThrough.js +6 -4
- package/build/relations/hasOneThrough.js.map +1 -1
- package/build/utils.d.ts +2 -0
- package/build/utils.d.ts.map +1 -1
- package/build/utils.js +12 -0
- package/build/utils.js.map +1 -1
- package/package.json +3 -5
- package/build/caches.d.ts +0 -6
- package/build/caches.d.ts.map +0 -1
- package/build/caches.js +0 -42
- package/build/caches.js.map +0 -1
package/build/BaseEntity.js
CHANGED
|
@@ -113,7 +113,7 @@ function toStringWithPrefix(meta, entity, prefix) {
|
|
|
113
113
|
* on its `Object.create`-d instances.
|
|
114
114
|
*/
|
|
115
115
|
function baseEntityCstr(em, entity, isNew) {
|
|
116
|
-
const data = new index_1.InstanceData(em, entity.constructor.metadata, isNew);
|
|
116
|
+
const data = new index_1.InstanceData(em, entity, entity.constructor.metadata, isNew);
|
|
117
117
|
// This makes it non-enumerable to avoid Jest/recursive things tripping over it
|
|
118
118
|
Object.defineProperty(entity, "__data", { value: data, enumerable: false, writable: false, configurable: false });
|
|
119
119
|
}
|
package/build/BaseEntity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseEntity.js","sourceRoot":"","sources":["../src/BaseEntity.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseEntity.js","sourceRoot":"","sources":["../src/BaseEntity.ts"],"names":[],"mappings":";;;AAiBA,0CAEC;AA6ID,wCAIC;AAnKD,mCASiB;AAEjB;;;;GAIG;AACH,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAsB,UAAU;IACvB,MAAM,CAAC,eAAe,CAAC,MAAc;QAC1C,OAAQ,MAA0B,CAAC,MAAM,CAAC;IAC5C,CAAC;IACD,+FAA+F;IAC5E,MAAM,CAAgB;IAIzC,YAAY,EAAiB,EAAE,KAAe;QAC5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAClF,CAAC;QACD,uFAAuF;QACvF,oDAAoD;QACpD,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,yFAAyF;IACzF,4FAA4F;IAC5F,8BAA8B;IAC9B,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAcD,wFAAwF;IACxF,IAAI,UAAU;QACZ,OAAO,IAAA,eAAO,EAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IAcD;;;;;OAKG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;IACrC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;IACnC,CAAC;IAED,QAAQ;QACN,MAAM,IAAI,GAAG,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,cAAc;QACZ,MAAM,IAAI,GAAG,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,EAAQ,CAAC;IAC9B,CAAC;IAED;;;;;;OAMG;IACI,MAAM;QACX,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,CAAC,MAAM,CAAC,WAAW,CAAC;QAClB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;CACF;AA7GD,gCA6GC;AAED,SAAS,kBAAkB,CAAC,IAAoB,EAAE,MAAc,EAAE,MAAc;IAC9E,sDAAsD;IACtD,IAAI,MAAM,GAAG,MAAM,CAAC;IACpB,4CAA4C;IAC5C,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;IAC3B,CAAC;IACD,yEAAyE;IACzE,qEAAqE;IACrE,MAAM,IAAI,GAAG,MAAM,CAAC,aAAa,CAAC;IAClC,IAAI,IAAI,CAAC,gBAAgB,KAAK,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC/C,sDAAsD;QACtD,MAAM,IAAI,IAAI,IAAA,mBAAW,EAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,EAAiB,EAAE,MAA4B,EAAE,KAAc;IAC5F,MAAM,IAAI,GAAG,IAAI,oBAAY,CAAC,EAAE,EAAE,MAAM,EAAG,MAAM,CAAC,WAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACvF,+EAA+E;IAC/E,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;AACpH,CAAC"}
|
package/build/EntityManager.d.ts
CHANGED
|
@@ -693,6 +693,8 @@ export interface EntityManagerInternalApi {
|
|
|
693
693
|
pluginManager: PluginManager;
|
|
694
694
|
clearDataloaders(): void;
|
|
695
695
|
clearPreloadedRelations(): void;
|
|
696
|
+
markMaybePending(entity: EntityW): void;
|
|
697
|
+
unmarkMaybePending(entity: EntityW): void;
|
|
696
698
|
setIsRefreshing(isRefreshing: boolean): void;
|
|
697
699
|
}
|
|
698
700
|
export declare function getEmInternalApi(em: EntityManager): EntityManagerInternalApi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityManager.d.ts","sourceRoot":"","sources":["../src/EntityManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EntityManager.d.ts","sourceRoot":"","sources":["../src/EntityManager.ts"],"names":[],"mappings":"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"}
|
package/build/EntityManager.js
CHANGED
|
@@ -29,7 +29,6 @@ const IndexManager_1 = require("./IndexManager");
|
|
|
29
29
|
// We alias `Entity => EntityW` to denote "Entity wide" i.e. the non-narrowed Entity
|
|
30
30
|
const loadBatchLoader_1 = require("./batchloaders/loadBatchLoader");
|
|
31
31
|
const populateBatchLoader_1 = require("./batchloaders/populateBatchLoader");
|
|
32
|
-
const caches_1 = require("./caches");
|
|
33
32
|
const config_1 = require("./config");
|
|
34
33
|
const configure_1 = require("./configure");
|
|
35
34
|
const findByUniqueDataLoader_1 = require("./dataloaders/findByUniqueDataLoader");
|
|
@@ -43,6 +42,7 @@ const FlushLock_1 = require("./FlushLock");
|
|
|
43
42
|
const index_1 = require("./index");
|
|
44
43
|
const IsLoadedCache_1 = require("./IsLoadedCache");
|
|
45
44
|
const JoinRows_1 = require("./JoinRows");
|
|
45
|
+
const loadHints_1 = require("./loadHints");
|
|
46
46
|
const newEntity_1 = require("./newEntity");
|
|
47
47
|
const newTestInstance_1 = require("./newTestInstance");
|
|
48
48
|
const PluginManager_1 = require("./PluginManager");
|
|
@@ -88,6 +88,8 @@ class EntityManager {
|
|
|
88
88
|
txn;
|
|
89
89
|
entityLimit = defaultEntityLimit;
|
|
90
90
|
#entitiesArray = [];
|
|
91
|
+
// Incrementally track dirty entities so we don't have to scan `#entityArray` during flush
|
|
92
|
+
#maybePendingFlushEntities = new Set();
|
|
91
93
|
// Indexes the currently loaded entities by their tagged ids and `toTaggedString` ids (i.e. `a#`). This fixes
|
|
92
94
|
// real-world performance issues where `findExistingInstance` scanning `#entities` was an `O(n^2)`.
|
|
93
95
|
#entitiesById = new Map();
|
|
@@ -155,6 +157,12 @@ class EntityManager {
|
|
|
155
157
|
indexManager: this.#indexManager,
|
|
156
158
|
isLoadedCache: this.#isLoadedCache,
|
|
157
159
|
pluginManager,
|
|
160
|
+
markMaybePending(entity) {
|
|
161
|
+
em.#maybePendingFlushEntities.add(entity);
|
|
162
|
+
},
|
|
163
|
+
unmarkMaybePending(entity) {
|
|
164
|
+
em.#maybePendingFlushEntities.delete(entity);
|
|
165
|
+
},
|
|
158
166
|
isMerging(entity) {
|
|
159
167
|
return em.#merging?.has(entity) ?? false;
|
|
160
168
|
},
|
|
@@ -248,12 +256,9 @@ class EntityManager {
|
|
|
248
256
|
async find(type, where, options) {
|
|
249
257
|
const { populate, ...rest } = options || {};
|
|
250
258
|
const settings = { where, ...rest };
|
|
251
|
-
const
|
|
259
|
+
const result = await (hasPaginationSettings(rest)
|
|
252
260
|
? (0, findPaginatedDataLoader_1.findPaginatedDataLoader)(this, type, settings, populate)
|
|
253
|
-
: (0, findDataLoader_1.findDataLoader)(this, type, settings, populate)
|
|
254
|
-
const result = await loader
|
|
255
|
-
.load(settings)
|
|
256
|
-
.catch(function find(err) {
|
|
261
|
+
: (0, findDataLoader_1.findDataLoader)(this, type, settings, populate)).catch(function find(err) {
|
|
257
262
|
throw appendStack(err, new Error());
|
|
258
263
|
});
|
|
259
264
|
if (populate) {
|
|
@@ -263,15 +268,15 @@ class EntityManager {
|
|
|
263
268
|
}
|
|
264
269
|
/** Runs the post-parse find pipeline: plugins mutate the logical AST, then Joist optimizes/prunes before SQL. */
|
|
265
270
|
async executeFind(meta, operation, parsed, settings) {
|
|
266
|
-
const { checkLimit,
|
|
267
|
-
return this.executePreparedFind(meta, operation, parsed,
|
|
271
|
+
const { checkLimit, findSettings } = this.prepareFind(meta, operation, parsed, settings);
|
|
272
|
+
return this.executePreparedFind(meta, operation, parsed, findSettings, checkLimit);
|
|
268
273
|
}
|
|
269
274
|
/** Executes a query that has already had find hooks and optimizations applied. */
|
|
270
|
-
async executePreparedFind(meta, operation, parsed,
|
|
275
|
+
async executePreparedFind(meta, operation, parsed, findSettings, checkLimit) {
|
|
271
276
|
const { pluginManager } = getEmInternalApi(this);
|
|
272
|
-
const rows = await this.driver.executeFind(this, parsed,
|
|
277
|
+
const rows = await this.driver.executeFind(this, parsed, findSettings);
|
|
273
278
|
// Check by default unless explicitly disabled or the caller removed the LIMIT via `limit: undefined`
|
|
274
|
-
const shouldCheck = checkLimit ?? !("limit" in
|
|
279
|
+
const shouldCheck = checkLimit ?? !("limit" in findSettings && findSettings.limit === undefined);
|
|
275
280
|
if (shouldCheck && rows.length >= this.entityLimit) {
|
|
276
281
|
throw new Error(`Query returned more than ${this.entityLimit} entityLimit rows`);
|
|
277
282
|
}
|
|
@@ -290,11 +295,12 @@ class EntityManager {
|
|
|
290
295
|
* - The loader calls `executePreparedFind` with the 2nd query
|
|
291
296
|
*/
|
|
292
297
|
prepareFind(meta, operation, parsed, settings) {
|
|
293
|
-
const { checkLimit, ...
|
|
298
|
+
const { checkLimit, ...findSettings } = settings;
|
|
294
299
|
const { pluginManager } = getEmInternalApi(this);
|
|
295
|
-
|
|
300
|
+
// Plugins may mutate the settings object, so return the post-hook version that loaders must reuse.
|
|
301
|
+
pluginManager.beforeFind(meta, operation, parsed, findSettings);
|
|
296
302
|
(0, index_1.optimizeCollectionJoins)(parsed, settings);
|
|
297
|
-
return { checkLimit,
|
|
303
|
+
return { checkLimit, findSettings };
|
|
298
304
|
}
|
|
299
305
|
async findGql(type, where, options) {
|
|
300
306
|
if (!options) {
|
|
@@ -363,9 +369,7 @@ class EntityManager {
|
|
|
363
369
|
*/
|
|
364
370
|
async findCount(type, where, options = {}) {
|
|
365
371
|
const settings = { where, ...options };
|
|
366
|
-
let count = await (0, findCountDataLoader_1.findCountDataLoader)(this, type, settings)
|
|
367
|
-
.load(settings)
|
|
368
|
-
.catch(function findCount(err) {
|
|
372
|
+
let count = await (0, findCountDataLoader_1.findCountDataLoader)(this, type, settings).catch(function findCount(err) {
|
|
369
373
|
throw appendStack(err, new Error());
|
|
370
374
|
});
|
|
371
375
|
// If the user is do "count all", we can adjust the number up/down based on
|
|
@@ -397,9 +401,7 @@ class EntityManager {
|
|
|
397
401
|
*/
|
|
398
402
|
async findIds(type, where, options = {}) {
|
|
399
403
|
const settings = { where, ...options };
|
|
400
|
-
return (0, findIdsDataLoader_1.findIdsDataLoader)(this, type, settings)
|
|
401
|
-
.load(settings)
|
|
402
|
-
.catch(function findIds(err) {
|
|
404
|
+
return (0, findIdsDataLoader_1.findIdsDataLoader)(this, type, settings).catch(function findIds(err) {
|
|
403
405
|
throw appendStack(err, new Error());
|
|
404
406
|
});
|
|
405
407
|
}
|
|
@@ -688,48 +690,86 @@ class EntityManager {
|
|
|
688
690
|
}
|
|
689
691
|
async loadAll(type, _ids, hint) {
|
|
690
692
|
const meta = (0, index_1.getMetadata)(type);
|
|
691
|
-
|
|
692
|
-
const
|
|
693
|
-
|
|
693
|
+
// Use pre-allocated arrays/for loops instead of `.filter`s since this can be a hot spot
|
|
694
|
+
const ids = new Array(_ids.length);
|
|
695
|
+
const entities = new Array(_ids.length);
|
|
696
|
+
let idsToLoad;
|
|
697
|
+
let positionsToLoad;
|
|
698
|
+
for (let i = 0; i < _ids.length; i++) {
|
|
699
|
+
const id = (0, index_1.tagId)(meta, _ids[i]);
|
|
700
|
+
ids[i] = id;
|
|
701
|
+
const entity = this.findExistingInstance(id);
|
|
702
|
+
if (entity) {
|
|
703
|
+
entities[i] = entity;
|
|
704
|
+
}
|
|
705
|
+
else {
|
|
706
|
+
(idsToLoad ??= []).push(id);
|
|
707
|
+
(positionsToLoad ??= []).push(i);
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
if (idsToLoad && idsToLoad.length > 0) {
|
|
694
711
|
await (0, loadBatchLoader_1.loadBatchLoader)(this, meta)
|
|
695
712
|
.loadAll(idsToLoad.map((id) => ({ taggedId: id, hint })))
|
|
696
713
|
.catch(function loadAll(err) {
|
|
697
714
|
throw appendStack(err, new Error());
|
|
698
715
|
});
|
|
716
|
+
for (const i of positionsToLoad) {
|
|
717
|
+
entities[i] = this.findExistingInstance(ids[i]);
|
|
718
|
+
}
|
|
699
719
|
}
|
|
700
|
-
|
|
701
|
-
for (
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
720
|
+
let idsNotFound;
|
|
721
|
+
for (let i = 0; i < entities.length; i++) {
|
|
722
|
+
if (entities[i] === undefined) {
|
|
723
|
+
(idsNotFound ??= []).push(ids[i]);
|
|
724
|
+
}
|
|
705
725
|
}
|
|
706
|
-
if (
|
|
707
|
-
const idsNotFound = ids.filter((_, i) => entities[i] === undefined);
|
|
726
|
+
if (idsNotFound) {
|
|
708
727
|
throw new NotFoundError(`${idsNotFound.join(",")} were not found`);
|
|
709
728
|
}
|
|
729
|
+
const loadedEntities = entities;
|
|
710
730
|
if (hint) {
|
|
711
|
-
await this.populate(
|
|
731
|
+
await this.populate(loadedEntities, hint);
|
|
712
732
|
}
|
|
713
733
|
if (meta.inheritanceType === "sti" && meta.baseType) {
|
|
714
|
-
const wrongType =
|
|
734
|
+
const wrongType = loadedEntities.filter((e) => !(e instanceof meta.cstr));
|
|
715
735
|
if (wrongType.length > 0) {
|
|
716
736
|
throw new Error(`${wrongType.join(", ")} were not of type ${meta.cstr.name}`);
|
|
717
737
|
}
|
|
718
738
|
}
|
|
719
|
-
return
|
|
739
|
+
return loadedEntities;
|
|
720
740
|
}
|
|
721
741
|
async loadAllIfExists(type, _ids, hint) {
|
|
722
742
|
const meta = (0, index_1.getMetadata)(type);
|
|
723
|
-
|
|
724
|
-
const
|
|
725
|
-
|
|
743
|
+
// Use pre-allocated arrays/for loops instead of `.filter`s since this can be a hot spot
|
|
744
|
+
const ids = new Array(_ids.length);
|
|
745
|
+
const entities = [];
|
|
746
|
+
let idsToLoad;
|
|
747
|
+
// Ensure the ids are tagged, and find any not-yet-loaded
|
|
748
|
+
for (let i = 0; i < _ids.length; i++) {
|
|
749
|
+
const id = (0, index_1.tagId)(meta, _ids[i]);
|
|
750
|
+
ids[i] = id;
|
|
751
|
+
const entity = this.findExistingInstance(id);
|
|
752
|
+
if (entity) {
|
|
753
|
+
entities.push(entity);
|
|
754
|
+
}
|
|
755
|
+
else {
|
|
756
|
+
(idsToLoad ??= []).push(id);
|
|
757
|
+
}
|
|
758
|
+
}
|
|
759
|
+
if (idsToLoad && idsToLoad.length > 0) {
|
|
726
760
|
await (0, loadBatchLoader_1.loadBatchLoader)(this, meta)
|
|
727
761
|
.loadAll(idsToLoad.map((id) => ({ taggedId: id, hint })))
|
|
728
762
|
.catch(function loadAllIfExists(err) {
|
|
729
763
|
throw appendStack(err, new Error());
|
|
730
764
|
});
|
|
765
|
+
// Now that everything is loaded, recalc `entities`
|
|
766
|
+
entities.length = 0;
|
|
767
|
+
for (const id of ids) {
|
|
768
|
+
const entity = this.findExistingInstance(id);
|
|
769
|
+
if (entity)
|
|
770
|
+
entities.push(entity);
|
|
771
|
+
}
|
|
731
772
|
}
|
|
732
|
-
const entities = ids.map((id) => this.findExistingInstance(id)).filter(Boolean);
|
|
733
773
|
if (hint) {
|
|
734
774
|
await this.populate(entities, hint);
|
|
735
775
|
}
|
|
@@ -780,6 +820,12 @@ class EntityManager {
|
|
|
780
820
|
if (list.length === 0) {
|
|
781
821
|
return !fn ? entityOrList : fn(entityOrList);
|
|
782
822
|
}
|
|
823
|
+
// Avoid building a HintTree/batchloader for persisted entities when everything is already loaded; in the phase 9
|
|
824
|
+
// benchmark this moved already-loaded populates from ~1.10ms to ~0.89ms, and nested already-loaded populates from
|
|
825
|
+
// ~2.39ms to ~1.94ms.
|
|
826
|
+
if (!opts.forceReload && list.every((entity) => !entity.isNewEntity && (0, loadHints_1.isLoadedForPopulate)(entity, hintOpt))) {
|
|
827
|
+
return fn ? fn(entityOrList) : entityOrList;
|
|
828
|
+
}
|
|
783
829
|
const meta = (0, index_1.getMetadata)(list[0]);
|
|
784
830
|
if (this.#preloader) {
|
|
785
831
|
// If we can preload, prevent promise deadlocking by one large-batch preload populate (which can't have
|
|
@@ -828,7 +874,7 @@ class EntityManager {
|
|
|
828
874
|
delete(entityOrArray) {
|
|
829
875
|
for (const entity of (0, utils_1.toArray)(entityOrArray)) {
|
|
830
876
|
// Early return if already deleted.
|
|
831
|
-
const alreadyMarked = (0, BaseEntity_1.getInstanceData)(entity).markDeleted(
|
|
877
|
+
const alreadyMarked = (0, BaseEntity_1.getInstanceData)(entity).markDeleted();
|
|
832
878
|
if (!alreadyMarked)
|
|
833
879
|
continue;
|
|
834
880
|
// Any derived fields that read this entity will need recalc-d
|
|
@@ -924,7 +970,7 @@ class EntityManager {
|
|
|
924
970
|
const pendingHooks = new Set();
|
|
925
971
|
// Subset of pendingFlush entities that had hooks invoked in a prior `runHooksOnPendingEntities`
|
|
926
972
|
const alreadyRanHooks = new Set();
|
|
927
|
-
findPendingFlushEntities(this
|
|
973
|
+
findPendingFlushEntities(this.#maybePendingFlushEntities, hooksInvoked, pendingFlush, pendingHooks, alreadyRanHooks);
|
|
928
974
|
// If we're re-looping for AsyncReactiveField, make sure to bump updatedAt
|
|
929
975
|
// each time, so that for an INSERT-then-UPDATE the triggers don't think the
|
|
930
976
|
// UPDATE forgot to self-bump updatedAt, and then "helpfully" bump it for us.
|
|
@@ -963,7 +1009,7 @@ class EntityManager {
|
|
|
963
1009
|
hooksInvoked.add(e);
|
|
964
1010
|
pendingHooks.clear();
|
|
965
1011
|
// See if the hooks mutated any new, not-yet-hooksInvoked entities
|
|
966
|
-
findPendingFlushEntities(this
|
|
1012
|
+
findPendingFlushEntities(this.#maybePendingFlushEntities, hooksInvoked, pendingFlush, pendingHooks, alreadyRanHooks);
|
|
967
1013
|
// The final run of recalcPendingReactables could have left us with pending type errors and no entities in
|
|
968
1014
|
// pendingHooks. If so, we need to re-run recalcPendingTypeErrors to get those errors to transition into
|
|
969
1015
|
// suppressed errors so that we will fail after simpleValidation.
|
|
@@ -1230,10 +1276,13 @@ class EntityManager {
|
|
|
1230
1276
|
*/
|
|
1231
1277
|
hydrate(type, rows, options) {
|
|
1232
1278
|
const maybeBaseMeta = (0, index_1.getMetadata)(type);
|
|
1279
|
+
const taggedIdPrefix = `${maybeBaseMeta.tagName}:`;
|
|
1280
|
+
const overwriteExisting = options?.overwriteExisting === true;
|
|
1233
1281
|
let i = 0;
|
|
1234
1282
|
const entities = new Array(rows.length);
|
|
1235
1283
|
for (const row of rows) {
|
|
1236
|
-
const
|
|
1284
|
+
const id = row["id"];
|
|
1285
|
+
const taggedId = id === undefined || id === null ? (0, utils_1.fail)("No id column was available") : `${taggedIdPrefix}${id}`;
|
|
1237
1286
|
// See if this is already in our UoW
|
|
1238
1287
|
let entity = this.findExistingInstance(taggedId);
|
|
1239
1288
|
if (!entity) {
|
|
@@ -1242,23 +1291,36 @@ class EntityManager {
|
|
|
1242
1291
|
// Pass id as a hint that we're in hydrate mode
|
|
1243
1292
|
entity = (0, newEntity_1.newEntity)(this, (0, index_1.asConcreteCstr)(meta.cstr), false);
|
|
1244
1293
|
(0, BaseEntity_1.getInstanceData)(entity).row = row;
|
|
1245
|
-
this.#doRegister(entity, taggedId);
|
|
1294
|
+
this.#doRegister(entity, taggedId, meta, true);
|
|
1246
1295
|
}
|
|
1247
|
-
else if (
|
|
1296
|
+
else if (overwriteExisting) {
|
|
1248
1297
|
// Usually if the entity already exists, we don't write over it, but in this case we assume that
|
|
1249
1298
|
// `EntityManager.refresh` is telling us to explicitly load the latest data.
|
|
1250
1299
|
// First swap out the old row with the new row
|
|
1251
|
-
(0, BaseEntity_1.getInstanceData)(entity)
|
|
1300
|
+
const instanceData = (0, BaseEntity_1.getInstanceData)(entity);
|
|
1301
|
+
instanceData.row = row;
|
|
1252
1302
|
// And then only refresh the data keys that have already been serde-d from rows
|
|
1253
1303
|
// (this keeps us from deserializing data out of rows that we don't need).
|
|
1254
|
-
const { data
|
|
1255
|
-
const
|
|
1256
|
-
|
|
1257
|
-
const
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1304
|
+
const { data } = instanceData;
|
|
1305
|
+
const dataKeys = Object.keys(data);
|
|
1306
|
+
if (dataKeys.length > 0) {
|
|
1307
|
+
const allFields = (0, index_1.getMetadata)(entity).allFields;
|
|
1308
|
+
const changedFields = entity.changes.fieldsWithoutRelations;
|
|
1309
|
+
if (changedFields.length === 0) {
|
|
1310
|
+
for (const fieldName of dataKeys) {
|
|
1311
|
+
const serde = allFields[fieldName].serde ?? (0, utils_1.fail)(`Missing serde for ${fieldName}`);
|
|
1312
|
+
serde.setOnEntity(data, row);
|
|
1313
|
+
}
|
|
1314
|
+
}
|
|
1315
|
+
else {
|
|
1316
|
+
for (const fieldName of dataKeys) {
|
|
1317
|
+
const serde = allFields[fieldName].serde ?? (0, utils_1.fail)(`Missing serde for ${fieldName}`);
|
|
1318
|
+
serde.setOnEntity(data, row);
|
|
1319
|
+
// Make the field look not-dirty
|
|
1320
|
+
if (changedFields.includes(fieldName)) {
|
|
1321
|
+
instanceData.markFieldClean(fieldName);
|
|
1322
|
+
}
|
|
1323
|
+
}
|
|
1262
1324
|
}
|
|
1263
1325
|
}
|
|
1264
1326
|
}
|
|
@@ -1267,8 +1329,9 @@ class EntityManager {
|
|
|
1267
1329
|
return entities;
|
|
1268
1330
|
}
|
|
1269
1331
|
touch(entityOrEntities) {
|
|
1270
|
-
for (const entity of (0, utils_1.toArray)(entityOrEntities))
|
|
1271
|
-
(0, BaseEntity_1.getInstanceData)(entity).
|
|
1332
|
+
for (const entity of (0, utils_1.toArray)(entityOrEntities)) {
|
|
1333
|
+
(0, BaseEntity_1.getInstanceData)(entity).markTouched();
|
|
1334
|
+
}
|
|
1272
1335
|
}
|
|
1273
1336
|
async recalc(entityOrEntities) {
|
|
1274
1337
|
// Look for async reactive fields
|
|
@@ -1345,9 +1408,16 @@ class EntityManager {
|
|
|
1345
1408
|
// Run the beforeDelete hook before we unhook the entity
|
|
1346
1409
|
const todos = (0, Todo_1.createTodos)(entities);
|
|
1347
1410
|
await beforeDelete(this.ctx, todos);
|
|
1348
|
-
// For all relations, unhook the entity from the other side
|
|
1349
|
-
//
|
|
1350
|
-
|
|
1411
|
+
// For all relations, unhook the entity from the other side; this append path is optimized for
|
|
1412
|
+
// large deletes with ~100k relations by avoiding `flatMap` intermediates and `concat` copies.
|
|
1413
|
+
for (const entity of entities) {
|
|
1414
|
+
const relations = (0, index_1.getRelations)(entity);
|
|
1415
|
+
const start = relationsToCleanup.length;
|
|
1416
|
+
relationsToCleanup.length += relations.length;
|
|
1417
|
+
for (let i = 0; i < relations.length; i++) {
|
|
1418
|
+
relationsToCleanup[start + i] = relations[i];
|
|
1419
|
+
}
|
|
1420
|
+
}
|
|
1351
1421
|
entities = this.#pendingDeletes;
|
|
1352
1422
|
this.#pendingDeletes = [];
|
|
1353
1423
|
}
|
|
@@ -1403,7 +1473,7 @@ class EntityManager {
|
|
|
1403
1473
|
return entities.filter((e) => e instanceof cstr && !e.isDeletedEntity);
|
|
1404
1474
|
}
|
|
1405
1475
|
if (this.#indexManager.shouldIndexType(entities.length)) {
|
|
1406
|
-
this.#indexManager.enableIndexingForType(meta, entities);
|
|
1476
|
+
this.#indexManager.enableIndexingForType(meta, entities, where);
|
|
1407
1477
|
return (this.#indexManager
|
|
1408
1478
|
.findMatching(meta, where)
|
|
1409
1479
|
// Still filter by `instanceof cstr` to handle subtyping
|
|
@@ -1505,7 +1575,8 @@ class EntityManager {
|
|
|
1505
1575
|
continue;
|
|
1506
1576
|
const { originalData: oldOriginalData, data: oldData } = oldInstanceData;
|
|
1507
1577
|
const newEntity = mapEntity(oldEntity);
|
|
1508
|
-
const
|
|
1578
|
+
const newInstanceData = newEntity.__data;
|
|
1579
|
+
const { data: newData } = newInstanceData;
|
|
1509
1580
|
// for new entities, anything in `data` is changed and should be copied across. for existing entities, we
|
|
1510
1581
|
// only care about changed fields, which are enumerated by originalData
|
|
1511
1582
|
const maybeEntity = (value) => ((0, Entity_1.isEntity)(value) ? mapEntity(value) : value);
|
|
@@ -1513,7 +1584,7 @@ class EntityManager {
|
|
|
1513
1584
|
for (const field of fields) {
|
|
1514
1585
|
// copy over originalData so .changes is consistent across ems
|
|
1515
1586
|
if (field in oldOriginalData)
|
|
1516
|
-
|
|
1587
|
+
newInstanceData.markFieldDirty(field, maybeEntity(oldOriginalData[field]));
|
|
1517
1588
|
newData[field] = maybeEntity(oldData[field]);
|
|
1518
1589
|
}
|
|
1519
1590
|
}
|
|
@@ -1523,7 +1594,7 @@ class EntityManager {
|
|
|
1523
1594
|
const newEntity = mapEntity(oldEntity);
|
|
1524
1595
|
if (oldEntity.isDeletedEntity) {
|
|
1525
1596
|
// If the old entity was deleted, that should be persisted in the new em
|
|
1526
|
-
newEntity.__data.markDeleted(
|
|
1597
|
+
newEntity.__data.markDeleted();
|
|
1527
1598
|
// deleted entities will fail if you try to `get` their relations, so skip them since they should be cleared
|
|
1528
1599
|
// out regardless
|
|
1529
1600
|
continue;
|
|
@@ -1668,11 +1739,11 @@ class EntityManager {
|
|
|
1668
1739
|
}
|
|
1669
1740
|
}
|
|
1670
1741
|
/** Registers a newly-instantiated entity with our EntityManager; only called by #doCreate and hydrate. */
|
|
1671
|
-
#doRegister(entity, id) {
|
|
1742
|
+
#doRegister(entity, id, meta, skipDuplicateCheck = false) {
|
|
1672
1743
|
// Keep our indexes up to date...
|
|
1673
1744
|
const maybeId = id ?? entity.idTaggedMaybe;
|
|
1674
1745
|
if (maybeId) {
|
|
1675
|
-
if (this.findExistingInstance(maybeId) !== undefined) {
|
|
1746
|
+
if (!skipDuplicateCheck && this.findExistingInstance(maybeId) !== undefined) {
|
|
1676
1747
|
throw new Error(`Entity ${entity} has a duplicate instance already loaded`);
|
|
1677
1748
|
}
|
|
1678
1749
|
this.#entitiesById.set(maybeId, entity);
|
|
@@ -1682,7 +1753,7 @@ class EntityManager {
|
|
|
1682
1753
|
this.#entitiesById.set(entity.toTaggedString(), entity);
|
|
1683
1754
|
}
|
|
1684
1755
|
this.#entitiesArray.push(entity);
|
|
1685
|
-
|
|
1756
|
+
meta ??= (0, index_1.getMetadata)(entity);
|
|
1686
1757
|
const set = this.#entitiesByTag.get(meta.tagName) ?? [];
|
|
1687
1758
|
if (set.length === 0)
|
|
1688
1759
|
this.#entitiesByTag.set(meta.tagName, set);
|
|
@@ -1781,14 +1852,14 @@ async function validateReactiveRules(em, logger, todos, joinRowTodos) {
|
|
|
1781
1852
|
const p1 = Object.values(todos).flatMap((todo) => {
|
|
1782
1853
|
const entities = [...todo.inserts, ...todo.updates, ...todo.deletes];
|
|
1783
1854
|
// Find each statically-declared reactive rule for the given entity type
|
|
1784
|
-
const rules =
|
|
1855
|
+
const rules = todo.metadata.reactiveRules;
|
|
1785
1856
|
return rules.map((rule) => {
|
|
1786
1857
|
// Of all changed entities of this type, how many specifically trigger this rule?
|
|
1787
1858
|
const triggered = entities.filter((e) => {
|
|
1788
1859
|
// If the rule is for a different subtype, skip it
|
|
1789
1860
|
if (!(e instanceof rule.source))
|
|
1790
1861
|
return false;
|
|
1791
|
-
// Any new-or-deleted entity fires every rule (
|
|
1862
|
+
// Any new-or-deleted entity fires every rule (reactiveRules has already filtered out read-only)
|
|
1792
1863
|
if (e.isNewEntity || e.isDeletedEntity)
|
|
1793
1864
|
return true;
|
|
1794
1865
|
// Otherwise see if the changed fields overlaps with the rule's fields
|
|
@@ -1806,15 +1877,15 @@ async function validateReactiveRules(em, logger, todos, joinRowTodos) {
|
|
|
1806
1877
|
const p2 = Object.values(joinRowTodos).flatMap((todo) => {
|
|
1807
1878
|
const entities = [...todo.newRows, ...todo.deletedRows].flatMap((jr) => Object.values(jr.columns));
|
|
1808
1879
|
// Do the first side
|
|
1809
|
-
const p1 =
|
|
1810
|
-
.filter((rule) => rule.fields.includes(todo.m2m.fieldName))
|
|
1880
|
+
const p1 = todo.m2m.meta
|
|
1881
|
+
.reactiveRules.filter((rule) => rule.fields.includes(todo.m2m.fieldName))
|
|
1811
1882
|
.map((rule) => {
|
|
1812
1883
|
const triggered = entities.filter((e) => e instanceof todo.m2m.meta.cstr);
|
|
1813
1884
|
return followAndQueue(triggered, rule);
|
|
1814
1885
|
});
|
|
1815
1886
|
// And the second side
|
|
1816
|
-
const p2 =
|
|
1817
|
-
.filter((rule) => rule.fields.includes(todo.m2m.otherFieldName))
|
|
1887
|
+
const p2 = todo.m2m.otherMeta
|
|
1888
|
+
.reactiveRules.filter((rule) => rule.fields.includes(todo.m2m.otherFieldName))
|
|
1818
1889
|
.map((rule) => {
|
|
1819
1890
|
const triggered = entities.filter((e) => e instanceof todo.m2m.otherMeta.cstr);
|
|
1820
1891
|
return followAndQueue(triggered, rule);
|
|
@@ -2043,7 +2114,7 @@ function maybeBumpUpdatedAt(rm, todos, now) {
|
|
|
2043
2114
|
// it has changed. This is technically true, but this will break the oplock SQL generation,
|
|
2044
2115
|
// so force the field to be dirty.
|
|
2045
2116
|
const orm = (0, BaseEntity_1.getInstanceData)(e);
|
|
2046
|
-
orm.
|
|
2117
|
+
orm.markFieldDirty(updatedAt, (0, fields_1.getField)(e, updatedAt));
|
|
2047
2118
|
const serde = todo.metadata.fields[updatedAt].serde;
|
|
2048
2119
|
orm.data[updatedAt] = serde.mapFromNow(now);
|
|
2049
2120
|
rm.queueDownstreamReactables(e, updatedAt);
|
|
@@ -2080,17 +2151,13 @@ function findConcreteMeta(maybeBaseMeta, row) {
|
|
|
2080
2151
|
throw new Error(`${maybeBaseMeta.type} ${(0, index_1.tagId)(maybeBaseMeta, row.id)} must be instantiated via a subtype`);
|
|
2081
2152
|
}
|
|
2082
2153
|
// Look for the CTI __class from the driver telling us which subtype to instantiate
|
|
2083
|
-
return maybeBaseMeta.
|
|
2154
|
+
return maybeBaseMeta.subTypesByType.get(row.__class) ?? maybeBaseMeta;
|
|
2084
2155
|
}
|
|
2085
2156
|
else if (maybeBaseMeta.inheritanceType === "sti") {
|
|
2086
2157
|
// Look for the STI discriminator value
|
|
2087
2158
|
const baseMeta = (0, index_1.getBaseMeta)(maybeBaseMeta);
|
|
2088
|
-
const
|
|
2089
|
-
|
|
2090
|
-
throw new Error("Discriminator field must be an enum");
|
|
2091
|
-
const columnName = field.serde.columns[0].columnName;
|
|
2092
|
-
const value = row[columnName];
|
|
2093
|
-
return baseMeta.subTypes.find((st) => st.stiDiscriminatorValue === value) ?? baseMeta;
|
|
2159
|
+
const value = row[baseMeta.stiDiscriminatorColumnName];
|
|
2160
|
+
return baseMeta.subTypesByStiValue.get(value) ?? baseMeta;
|
|
2094
2161
|
}
|
|
2095
2162
|
else {
|
|
2096
2163
|
throw new Error("Unknown inheritance type");
|
|
@@ -2099,7 +2166,7 @@ function findConcreteMeta(maybeBaseMeta, row) {
|
|
|
2099
2166
|
/** Sets the `Animal.type` enum to the right subtype value. */
|
|
2100
2167
|
function setStiDiscriminatorValue(baseMeta, entity) {
|
|
2101
2168
|
const typeName = entity.constructor.name;
|
|
2102
|
-
const st = baseMeta.
|
|
2169
|
+
const st = baseMeta.subTypesByType.get(typeName);
|
|
2103
2170
|
if (st) {
|
|
2104
2171
|
const field = baseMeta.fields[baseMeta.stiDiscriminatorField];
|
|
2105
2172
|
const code = field.enumDetailType.findById(st.stiDiscriminatorValue).code;
|
|
@@ -2109,17 +2176,19 @@ function setStiDiscriminatorValue(baseMeta, entity) {
|
|
|
2109
2176
|
entity[baseMeta.stiDiscriminatorField] = undefined;
|
|
2110
2177
|
}
|
|
2111
2178
|
}
|
|
2112
|
-
function findPendingFlushEntities(
|
|
2113
|
-
for (const e of
|
|
2114
|
-
if ((0, BaseEntity_1.getInstanceData)(e).pendingOperation
|
|
2115
|
-
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2119
|
-
|
|
2120
|
-
|
|
2121
|
-
|
|
2179
|
+
function findPendingFlushEntities(maybePendingFlushEntities, hooksInvoked, pendingFlush, pendingHooks, alreadyRanHooks) {
|
|
2180
|
+
for (const e of maybePendingFlushEntities) {
|
|
2181
|
+
if ((0, BaseEntity_1.getInstanceData)(e).pendingOperation === "none") {
|
|
2182
|
+
maybePendingFlushEntities.delete(e);
|
|
2183
|
+
continue;
|
|
2184
|
+
}
|
|
2185
|
+
if (!hooksInvoked.has(e)) {
|
|
2186
|
+
pendingHooks.add(e);
|
|
2187
|
+
}
|
|
2188
|
+
else {
|
|
2189
|
+
alreadyRanHooks.add(e);
|
|
2122
2190
|
}
|
|
2191
|
+
pendingFlush.add(e);
|
|
2123
2192
|
}
|
|
2124
2193
|
}
|
|
2125
2194
|
/** Returns true if the caller explicitly asked `find` to use SQL pagination. */
|