@belopash/typeorm-store 0.0.0 → 0.0.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/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ #### 0.0.2 (2023-09-01)
2
+
3
+ #### 0.0.1 (2023-08-29)
4
+
1
5
  #### 0.3.1 (2023-08-21)
2
6
 
3
7
  #### 0.2.1 (2023-08-03)
package/lib/cacheMap.d.ts CHANGED
@@ -1,23 +1,29 @@
1
1
  import { Entity } from '@subsquid/typeorm-store';
2
2
  import { EntityManager, EntityTarget, FindOptionsRelations } from 'typeorm';
3
+ import { Logger } from '@subsquid/logger';
3
4
  export declare class CachedEntity<E extends Entity> {
4
5
  value: E | null;
5
- relations: {
6
- [key: string]: boolean;
7
- };
8
6
  constructor();
9
7
  }
10
8
  export declare class CacheMap {
11
9
  private em;
10
+ private opts;
12
11
  private map;
13
- constructor(em: () => EntityManager);
12
+ constructor(em: () => EntityManager, opts: {
13
+ logger: Logger;
14
+ });
14
15
  exist<E extends Entity>(entityClass: EntityTarget<E>, id: string): boolean;
15
16
  get<E extends Entity>(entityClass: EntityTarget<E>, id: string): CachedEntity<E> | undefined;
16
17
  ensure<E extends Entity>(entityClass: EntityTarget<E>, id: string): void;
17
18
  delete<E extends Entity>(entityClass: EntityTarget<E>, id: string): void;
18
- add<E extends Entity>(entity: E, mask?: FindOptionsRelations<any>): void;
19
- add<E extends Entity>(entities: E[], mask?: FindOptionsRelations<any>): void;
20
19
  clear(): void;
20
+ add<E extends Entity>(entity: E, mask?: FindOptionsRelations<E>): void;
21
+ add<E extends Entity>(entities: E[], mask?: FindOptionsRelations<E>): void;
22
+ private cacheEntity;
23
+ private cacheColumns;
24
+ private cacheRelatedEntities;
21
25
  private getEntityCache;
26
+ private getEntityName;
27
+ private getLogger;
22
28
  }
23
29
  //# sourceMappingURL=cacheMap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cacheMap.d.ts","sourceRoot":"","sources":["../src/cacheMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,yBAAyB,CAAA;AAE9C,OAAO,EAAC,aAAa,EAAE,YAAY,EAAE,oBAAoB,EAAC,MAAM,SAAS,CAAA;AAGzE,qBAAa,YAAY,CAAC,CAAC,SAAS,MAAM;IACtC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;IACf,SAAS,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAA;;CAMtC;AAED,qBAAa,QAAQ;IAGL,OAAO,CAAC,EAAE;IAFtB,OAAO,CAAC,GAAG,CAAyD;gBAEhD,EAAE,EAAE,MAAM,aAAa;IAE3C,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAMhE,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAK9D,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAUjE,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAOjE,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,IAAI;IACxE,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,IAAI;IAkE5E,KAAK;IAOL,OAAO,CAAC,cAAc;CAYzB"}
1
+ {"version":3,"file":"cacheMap.d.ts","sourceRoot":"","sources":["../src/cacheMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,yBAAyB,CAAA;AAC9C,OAAO,EAAC,aAAa,EAAE,YAAY,EAAE,oBAAoB,EAAC,MAAM,SAAS,CAAA;AAIzE,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAGvC,qBAAa,YAAY,CAAC,CAAC,SAAS,MAAM;IACtC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;;CAKlB;AAED,qBAAa,QAAQ;IAGL,OAAO,CAAC,EAAE;IAAuB,OAAO,CAAC,IAAI;IAFzD,OAAO,CAAC,GAAG,CAAyD;gBAEhD,EAAE,EAAE,MAAM,aAAa,EAAU,IAAI,EAAE;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC;IAE3E,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAMhE,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAK9D,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAWjE,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM;IAQjE,KAAK;IAUL,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI;IACtE,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI;IAU1E,OAAO,CAAC,WAAW;IAwBnB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,oBAAoB;IAyC5B,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,SAAS;CAGpB"}
package/lib/cacheMap.js CHANGED
@@ -1,21 +1,28 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
4
10
  };
5
11
  Object.defineProperty(exports, "__esModule", { value: true });
6
12
  exports.CacheMap = exports.CachedEntity = void 0;
7
- const assert_1 = __importDefault(require("assert"));
8
13
  const utils_1 = require("./utils");
14
+ const logger_1 = require("@subsquid/logger");
15
+ const util_internal_1 = require("@subsquid/util-internal");
9
16
  class CachedEntity {
10
17
  constructor() {
11
18
  this.value = null;
12
- this.relations = {};
13
19
  }
14
20
  }
15
21
  exports.CachedEntity = CachedEntity;
16
22
  class CacheMap {
17
- constructor(em) {
23
+ constructor(em, opts) {
18
24
  this.em = em;
25
+ this.opts = opts;
19
26
  this.map = new Map();
20
27
  }
21
28
  exist(entityClass, id) {
@@ -29,87 +36,117 @@ class CacheMap {
29
36
  }
30
37
  ensure(entityClass, id) {
31
38
  const cacheMap = this.getEntityCache(entityClass);
32
- let cachedEntity = cacheMap.get(id);
33
- if (cachedEntity == null) {
34
- cachedEntity = new CachedEntity();
35
- cacheMap.set(id, cachedEntity);
39
+ if (!cacheMap.has(id)) {
40
+ cacheMap.set(id, new CachedEntity());
41
+ const name = this.getEntityName(entityClass);
42
+ this.getLogger().debug(`added empty entity ${name} ${id}`);
36
43
  }
37
44
  }
38
45
  delete(entityClass, id) {
39
46
  const cacheMap = this.getEntityCache(entityClass);
40
- const cachedEntity = new CachedEntity();
41
- cacheMap.set(id, cachedEntity);
47
+ cacheMap.set(id, new CachedEntity());
48
+ const name = this.getEntityName(entityClass);
49
+ this.getLogger().debug(`deleted entity ${name} ${id}`);
50
+ }
51
+ clear() {
52
+ const log = this.getLogger();
53
+ for (const [name, item] of this.map) {
54
+ log.debug(`cleared cache for ${name} (${item.size})`);
55
+ item.clear();
56
+ }
57
+ this.map.clear();
42
58
  }
43
59
  add(e, mask = {}) {
44
- const em = this.em();
45
60
  const entities = Array.isArray(e) ? e : [e];
46
- if (entities.length == 0)
61
+ if (entities.length === 0)
47
62
  return;
48
- const entityClass = entities[0].constructor;
49
- const metadata = em.connection.getMetadata(entities[0].constructor);
50
- const cacheMap = this.getEntityCache(metadata.target);
51
63
  for (const entity of entities) {
52
- let cachedEntity = cacheMap.get(entity.id);
53
- if (cachedEntity == null) {
54
- cachedEntity = new CachedEntity();
55
- cacheMap.set(entity.id, cachedEntity);
56
- }
57
- if (cachedEntity.value == null) {
58
- cachedEntity.value = em.create(entityClass);
64
+ this.cacheEntity(entity, mask);
65
+ }
66
+ }
67
+ cacheEntity(entity, mask) {
68
+ const em = this.em();
69
+ const entityClass = entity.constructor;
70
+ const metadata = em.connection.getMetadata(entityClass);
71
+ const cacheMap = this.getEntityCache(entityClass);
72
+ const entityId = entity.id;
73
+ let cachedEntity = cacheMap.get(entityId);
74
+ if (cachedEntity == null) {
75
+ cachedEntity = new CachedEntity();
76
+ cacheMap.set(entityId, cachedEntity);
77
+ }
78
+ if (cachedEntity.value == null) {
79
+ cachedEntity.value = em.create(metadata.target);
80
+ this.getLogger().debug(`added entity ${metadata.name} ${entity.id}`);
81
+ }
82
+ this.cacheColumns(metadata.nonVirtualColumns, entity, cachedEntity.value);
83
+ this.cacheRelatedEntities(metadata.relations, entity, cachedEntity.value, mask);
84
+ }
85
+ cacheColumns(columns, sourceEntity, cachedEntity) {
86
+ for (const column of columns) {
87
+ const objectColumnValue = column.getEntityValue(sourceEntity);
88
+ if (objectColumnValue !== undefined) {
89
+ column.setEntityValue(cachedEntity, (0, utils_1.copy)(objectColumnValue));
59
90
  }
60
- for (const column of metadata.nonVirtualColumns) {
61
- const objectColumnValue = column.getEntityValue(entity);
62
- if (objectColumnValue !== undefined) {
63
- column.setEntityValue(cachedEntity.value, (0, utils_1.copy)(objectColumnValue));
91
+ }
92
+ }
93
+ cacheRelatedEntities(relations, sourceEntity, cachedEntity, mask) {
94
+ for (const relation of relations) {
95
+ const relatedMetadata = relation.inverseEntityMetadata;
96
+ const relatedEntity = relation.getEntityValue(sourceEntity);
97
+ const relatedMask = mask[relation.propertyName];
98
+ if (relatedEntity === undefined)
99
+ continue;
100
+ if (relatedMask) {
101
+ if (relation.isOneToMany || relation.isManyToMany) {
102
+ if (!Array.isArray(relatedEntity))
103
+ continue;
104
+ for (const entity of relatedEntity) {
105
+ this.cacheEntity(entity, typeof relatedMask === 'boolean' ? {} : relatedMask);
106
+ }
107
+ }
108
+ else if (relatedEntity != null) {
109
+ this.cacheEntity(relatedEntity, typeof relatedMask === 'boolean' ? {} : relatedMask);
64
110
  }
65
111
  }
66
- for (const relation of metadata.relations) {
67
- const relatedMetadata = relation.inverseEntityMetadata;
68
- const relatedEntity = relation.getEntityValue(entity);
69
- const relatedMask = mask[relation.propertyName];
70
- if (relatedMask) {
71
- if (relation.isOneToMany || relation.isManyToMany) {
72
- if (Array.isArray(relatedEntity)) {
73
- for (const r of relatedEntity) {
74
- this.add(r, typeof relatedMask === 'boolean' ? {} : relatedMask);
75
- }
76
- }
77
- }
78
- else if (relatedEntity != null) {
79
- this.add(relatedEntity, typeof relatedMask === 'boolean' ? {} : relatedMask);
80
- }
112
+ if (relation.isOwning) {
113
+ if (relatedEntity === null) {
114
+ relation.setEntityValue(cachedEntity, null);
81
115
  }
82
- if (relation.isOwning && relatedMask) {
83
- if (relatedEntity == null) {
84
- relation.setEntityValue(cachedEntity.value, null);
85
- }
86
- else {
87
- const _relationCacheMap = this.getEntityCache(relatedMetadata.target);
88
- const cachedRelation = _relationCacheMap.get(relatedEntity.id);
89
- (0, assert_1.default)(cachedRelation != null, `missing entity ${relatedMetadata.name} with id ${relatedEntity.id}`);
90
- const relatedEntityIdOnly = em.create(relatedMetadata.target, { id: relatedEntity.id });
91
- relation.setEntityValue(cachedEntity.value, relatedEntityIdOnly);
116
+ else {
117
+ const relationCacheMap = this.getEntityCache(relatedMetadata.target);
118
+ const cachedRelation = relationCacheMap.get(relatedEntity.id);
119
+ if (cachedRelation == null) {
120
+ throw new Error(`Missing entity ${relatedMetadata.name} with id ${relatedEntity.id}`);
92
121
  }
122
+ relation.setEntityValue(cachedEntity, cachedRelation.value);
93
123
  }
94
124
  }
95
125
  }
96
126
  }
97
- clear() {
98
- for (const item of this.map.values()) {
99
- item.clear();
100
- }
101
- this.map.clear();
102
- }
103
127
  getEntityCache(entityClass) {
104
- const em = this.em();
105
- const metadata = em.connection.getMetadata(entityClass);
106
- let map = this.map.get(metadata.name);
128
+ const name = this.getEntityName(entityClass);
129
+ let map = this.map.get(name);
107
130
  if (map == null) {
108
131
  map = new Map();
109
- this.map.set(metadata.name, map);
132
+ this.map.set(name, map);
110
133
  }
111
134
  return map;
112
135
  }
136
+ getEntityName(entityClass) {
137
+ const em = this.em();
138
+ const metadata = em.connection.getMetadata(entityClass);
139
+ return metadata.name;
140
+ }
141
+ getLogger() {
142
+ return this.opts.logger.child('cache');
143
+ }
113
144
  }
145
+ __decorate([
146
+ util_internal_1.def,
147
+ __metadata("design:type", Function),
148
+ __metadata("design:paramtypes", []),
149
+ __metadata("design:returntype", logger_1.Logger)
150
+ ], CacheMap.prototype, "getLogger", null);
114
151
  exports.CacheMap = CacheMap;
115
152
  //# sourceMappingURL=cacheMap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cacheMap.js","sourceRoot":"","sources":["../src/cacheMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cacheMap.js","sourceRoot":"","sources":["../src/cacheMap.ts"],"names":[],"mappings":"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"}
package/lib/store.d.ts CHANGED
@@ -40,6 +40,7 @@ export declare class StoreWithCache extends Store {
40
40
  private getCached;
41
41
  defer<E extends Entity>(entityClass: EntityTarget<E>, id: string, relations?: FindOptionsRelations<E>): DeferredEntity<E>;
42
42
  private persist;
43
+ private collectChangeSets;
43
44
  flush(): Promise<void>;
44
45
  private load;
45
46
  private knownSelfRelations;
@@ -47,6 +48,10 @@ export declare class StoreWithCache extends Store {
47
48
  private getTopologicalOrder;
48
49
  private getDeferData;
49
50
  private getUpdateMap;
51
+ private getLogger;
52
+ private saveMany;
53
+ private getFkSignature;
54
+ private upsertMany;
50
55
  }
51
56
  export declare class DeferredEntity<E extends Entity> {
52
57
  private opts;
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
package/lib/store.js CHANGED
@@ -21,6 +21,7 @@ const typeorm_1 = require("typeorm");
21
21
  const utils_1 = require("./utils");
22
22
  const cacheMap_1 = require("./cacheMap");
23
23
  const updateMap_1 = require("./updateMap");
24
+ const logger_1 = require("@subsquid/logger");
24
25
  // @ts-ignore
25
26
  class StoreWithCache extends typeorm_store_1.Store {
26
27
  constructor(em, changes) {
@@ -29,7 +30,7 @@ class StoreWithCache extends typeorm_store_1.Store {
29
30
  this.deferMap = new Map();
30
31
  this.updates = new Map();
31
32
  this.knownSelfRelations = {};
32
- this.cache = new cacheMap_1.CacheMap(em);
33
+ this.cache = new cacheMap_1.CacheMap(em, { logger: this.getLogger() });
33
34
  }
34
35
  async insert(e) {
35
36
  const em = this.em();
@@ -38,16 +39,10 @@ class StoreWithCache extends typeorm_store_1.Store {
38
39
  return;
39
40
  const entityClass = entities[0].constructor;
40
41
  const metadata = em.connection.getMetadata(entityClass);
41
- const relationMask = {};
42
- for (const relation of metadata.relations) {
43
- if (relation.isOwning) {
44
- relationMask[relation.propertyName] = true;
45
- }
46
- }
47
42
  const updateMap = this.getUpdateMap(entityClass);
48
43
  for (const entity of entities) {
49
44
  updateMap.insert(entity.id);
50
- this.cache.add(entity, relationMask);
45
+ this.cache.add(entity);
51
46
  }
52
47
  }
53
48
  async upsert(e) {
@@ -59,15 +54,8 @@ class StoreWithCache extends typeorm_store_1.Store {
59
54
  const metadata = em.connection.getMetadata(entityClass);
60
55
  const updateMap = this.getUpdateMap(entityClass);
61
56
  for (const entity of entities) {
62
- const relationMask = {};
63
- for (const relation of metadata.relations) {
64
- const relatedEntity = relation.getEntityValue(entity);
65
- if (relation.isOwning && relatedEntity !== undefined) {
66
- relationMask[relation.propertyName] = true;
67
- }
68
- }
69
57
  updateMap.upsert(entity.id);
70
- this.cache.add(entity, relationMask);
58
+ this.cache.add(entity);
71
59
  }
72
60
  }
73
61
  async save(e) {
@@ -216,73 +204,79 @@ class StoreWithCache extends typeorm_store_1.Store {
216
204
  });
217
205
  }
218
206
  async persist() {
219
- const em = this.em();
207
+ const log = this.getLogger();
220
208
  const entityOrder = this.getTopologicalOrder();
221
209
  const entityOrderReversed = [...entityOrder].reverse();
222
210
  const changeSets = new Map();
223
211
  for (const name of entityOrder) {
224
- const updateMap = this.getUpdateMap(name);
225
- const inserts = [];
226
- const upserts = [];
227
- const delayedUpserts = [];
228
- const removes = [];
229
- for (const { id, type } of updateMap) {
230
- const cached = this.cache.get(name, id);
231
- switch (type) {
232
- case updateMap_1.UpdateType.Insert: {
233
- (0, assert_1.default)(cached != null && cached.value != null);
234
- inserts.push(cached.value);
235
- break;
236
- }
237
- case updateMap_1.UpdateType.Upsert: {
238
- (0, assert_1.default)(cached != null && cached.value != null);
239
- let isDelayed = false;
240
- for (const relation of this.getSelfRelations(name)) {
241
- const relatedEntity = relation.getEntityValue(cached.value);
242
- const relatedUpdateType = updateMap.get(relatedEntity.id);
243
- if (relatedUpdateType === updateMap_1.UpdateType.Insert) {
244
- isDelayed = true;
245
- break;
246
- }
247
- }
248
- if (isDelayed) {
249
- delayedUpserts.push(cached.value);
250
- }
251
- else {
252
- upserts.push(cached.value);
253
- }
254
- break;
255
- }
256
- case updateMap_1.UpdateType.Remove: {
257
- const e = em.create(name, { id });
258
- removes.push(e);
259
- break;
260
- }
261
- }
262
- }
263
- changeSets.set(name, {
264
- inserts,
265
- upserts,
266
- delayedUpserts,
267
- removes,
268
- });
212
+ const changeSet = this.collectChangeSets(name);
213
+ changeSets.set(name, changeSet);
269
214
  }
270
215
  for (const name of entityOrder) {
271
216
  const changeSet = changeSets.get(name);
272
217
  if (changeSet == null)
273
218
  continue;
219
+ log.debug(`persist upserts for ${name} (${changeSet.upserts.length})`);
274
220
  await super.upsert(changeSet.upserts);
221
+ log.debug(`persist inserts for ${name} (${changeSet.inserts.length})`);
275
222
  await super.insert(changeSet.inserts);
223
+ log.debug(`persist delayed updates for ${name} (${changeSet.delayedUpserts.length})`);
276
224
  await super.upsert(changeSet.delayedUpserts);
277
225
  }
278
226
  for (const name of entityOrderReversed) {
279
227
  const changeSet = changeSets.get(name);
280
228
  if (changeSet == null)
281
229
  continue;
230
+ log.debug(`persist removes for ${name} (${changeSet.removes.length})`);
282
231
  await super.remove(changeSet.removes);
283
232
  }
284
233
  this.updates.clear();
285
234
  }
235
+ collectChangeSets(entityClass) {
236
+ const em = this.em();
237
+ const inserts = [];
238
+ const upserts = [];
239
+ const delayedUpserts = [];
240
+ const removes = [];
241
+ const updateMap = this.getUpdateMap(entityClass);
242
+ for (const { id, type } of updateMap) {
243
+ const cached = this.cache.get(entityClass, id);
244
+ switch (type) {
245
+ case updateMap_1.UpdateType.Insert: {
246
+ (0, assert_1.default)(cached?.value != null);
247
+ inserts.push(cached.value);
248
+ break;
249
+ }
250
+ case updateMap_1.UpdateType.Upsert: {
251
+ (0, assert_1.default)(cached?.value != null);
252
+ let isDelayed = false;
253
+ for (const relation of this.getSelfRelations(entityClass)) {
254
+ const relatedEntity = relation.getEntityValue(cached.value);
255
+ if (relatedEntity == null)
256
+ continue;
257
+ const relatedUpdateType = updateMap.get(relatedEntity.id);
258
+ if (relatedUpdateType === updateMap_1.UpdateType.Insert) {
259
+ isDelayed = true;
260
+ break;
261
+ }
262
+ }
263
+ if (isDelayed) {
264
+ delayedUpserts.push(cached.value);
265
+ }
266
+ else {
267
+ upserts.push(cached.value);
268
+ }
269
+ break;
270
+ }
271
+ case updateMap_1.UpdateType.Remove: {
272
+ const e = em.create(entityClass, { id });
273
+ removes.push(e);
274
+ break;
275
+ }
276
+ }
277
+ }
278
+ return { inserts, upserts, delayedUpserts, removes };
279
+ }
286
280
  async flush() {
287
281
  await this.persist();
288
282
  this.cache.clear();
@@ -343,6 +337,43 @@ class StoreWithCache extends typeorm_store_1.Store {
343
337
  }
344
338
  return list;
345
339
  }
340
+ getLogger() {
341
+ return (0, logger_1.createLogger)('sqd:store');
342
+ }
343
+ // @ts-ignore
344
+ async saveMany(entityClass, entities) {
345
+ (0, assert_1.default)(entities.length > 0);
346
+ let em = this.em();
347
+ let metadata = em.connection.getMetadata(entityClass);
348
+ let fk = metadata.columns.filter((c) => c.relationMetadata);
349
+ if (fk.length == 0) {
350
+ return this.upsertMany(em, entityClass, entities);
351
+ }
352
+ let signatures = entities
353
+ .map((e) => ({ entity: e, value: this.getFkSignature(fk, e) }))
354
+ .sort((a, b) => (a.value > b.value ? -1 : b.value > a.value ? 1 : 0));
355
+ let currentSignature = signatures[0].value;
356
+ let batch = [];
357
+ for (let s of signatures) {
358
+ if (s.value === currentSignature) {
359
+ batch.push(s.entity);
360
+ }
361
+ else {
362
+ await this.upsertMany(em, entityClass, batch);
363
+ currentSignature = s.value;
364
+ batch = [s.entity];
365
+ }
366
+ }
367
+ if (batch.length) {
368
+ await this.upsertMany(em, entityClass, batch);
369
+ }
370
+ }
371
+ getFkSignature(fk, entity) {
372
+ return super['getFkSignature'](fk, entity);
373
+ }
374
+ async upsertMany(em, entityClass, entities) {
375
+ return super['upsertMany'](em, entityClass, entities);
376
+ }
346
377
  }
347
378
  __decorate([
348
379
  util_internal_1.def,
@@ -350,6 +381,12 @@ __decorate([
350
381
  __metadata("design:paramtypes", []),
351
382
  __metadata("design:returntype", void 0)
352
383
  ], StoreWithCache.prototype, "getTopologicalOrder", null);
384
+ __decorate([
385
+ util_internal_1.def,
386
+ __metadata("design:type", Function),
387
+ __metadata("design:paramtypes", []),
388
+ __metadata("design:returntype", logger_1.Logger)
389
+ ], StoreWithCache.prototype, "getLogger", null);
353
390
  exports.StoreWithCache = StoreWithCache;
354
391
  function mergeRelataions(a, b) {
355
392
  const mergedObject = {};
package/lib/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"updateMap.d.ts","sourceRoot":"","sources":["../src/updateMap.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IAClB,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;CACT;AAED,MAAM,WAAW,MAAM;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,UAAU,CAAA;CACnB;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,GAAG,CAAqC;IAEhD,GAAG,CAAC,EAAE,EAAE,MAAM;IAId,MAAM,CAAC,EAAE,EAAE,MAAM;IAgBjB,MAAM,CAAC,EAAE,EAAE,MAAM;IAcjB,MAAM,CAAC,EAAE,EAAE,MAAM;IAajB,KAAK;IAIJ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC;CAQjD"}
1
+ {"version":3,"file":"updateMap.d.ts","sourceRoot":"","sources":["../src/updateMap.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IAClB,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;CACT;AAED,MAAM,WAAW,MAAM;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,UAAU,CAAA;CACnB;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,GAAG,CAAqC;IAEhD,GAAG,CAAC,EAAE,EAAE,MAAM;IAId,MAAM,CAAC,EAAE,EAAE,MAAM;IAQjB,MAAM,CAAC,EAAE,EAAE,MAAM;IAIjB,MAAM,CAAC,EAAE,EAAE,MAAM;IASjB,KAAK;IAIJ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC;CAQjD"}