@hg-ts/knex 0.2.23 → 0.2.24

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.
@@ -1,6 +1,5 @@
1
1
  import { DomainEvent } from '@hg-ts/domain';
2
2
  import { BaseEventRepository, EventFindOptions } from '@hg-ts/repository';
3
- import { Knex } from 'knex';
4
3
  import { KnexService } from './knex.service';
5
4
  export type EventTable = {
6
5
  id: string;
@@ -15,13 +14,15 @@ export type EventTable = {
15
14
  declare module 'knex/types/tables' {
16
15
  interface Tables {
17
16
  event: EventTable;
18
- event_composite: Knex.CompositeTableType<EventTable, Omit<EventTable, 'createdAt'>, never>;
17
+ unpublishedEvent: EventTable;
19
18
  }
20
19
  }
21
- export declare abstract class EventKnexRepository extends BaseEventRepository {
20
+ export declare class EventKnexRepository extends BaseEventRepository {
22
21
  protected readonly knex: KnexService;
22
+ findUnpublished(options: EventFindOptions): Promise<DomainEvent[]>;
23
23
  add(event: DomainEvent | DomainEvent[]): Promise<void>;
24
- protected findEntities(options?: Partial<EventFindOptions>): Promise<DomainEvent[]>;
25
- protected abstract createEvent(name: string, row: Omit<EventTable, 'name'>): DomainEvent;
24
+ deleteUnpublished(events: DomainEvent[]): Promise<void>;
25
+ protected findEntities(options?: Partial<EventFindOptions>, table?: 'event' | 'unpublishedEvent'): Promise<DomainEvent[]>;
26
+ protected createEvent(name: string, row: Omit<EventTable, 'name'>): DomainEvent;
26
27
  }
27
28
  //# sourceMappingURL=event.knex.repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event.knex.repository.d.ts","sourceRoot":"","sources":["../src/event.knex.repository.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EAEX,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,MAAM,UAAU,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1B,UAAU,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;CAChB,CAAC;AAEF,OAAO,QAAQ,mBAAmB,CAAC;IAElC,UAAU,MAAM;QACf,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;KAC3F;CACD;AAED,8BAAsB,mBAAoB,SAAQ,mBAAmB;IAEpE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAEf,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;cAenD,YAAY,CAAC,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAmCtG,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,WAAW;CACxF"}
1
+ {"version":3,"file":"event.knex.repository.d.ts","sourceRoot":"","sources":["../src/event.knex.repository.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EAEX,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,MAAM,UAAU,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1B,UAAU,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;CAChB,CAAC;AAEF,OAAO,QAAQ,mBAAmB,CAAC;IAElC,UAAU,MAAM;QACf,KAAK,EAAE,UAAU,CAAC;QAClB,gBAAgB,EAAE,UAAU,CAAC;KAC7B;CACD;AAED,qBAAa,mBAAoB,SAAQ,mBAAmB;IAE3D,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAEf,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAIlE,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtD,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;cAYpD,YAAY,CACpC,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM,EACvC,KAAK,GAAE,OAAO,GAAG,kBAA4B,GAC3C,OAAO,CAAC,WAAW,EAAE,CAAC;IA+CzB,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,WAAW;CAU/E"}
@@ -8,23 +8,28 @@ const common_1 = require("@nestjs/common");
8
8
  const knex_service_1 = require("./knex.service");
9
9
  class EventKnexRepository extends repository_1.BaseEventRepository {
10
10
  knex;
11
+ async findUnpublished(options) {
12
+ return this.findEntities(options, 'unpublishedEvent');
13
+ }
11
14
  async add(event) {
12
15
  const events = Array.isArray(event) ? event : [event];
13
- const trx = await this.knex.getTrx();
14
- await trx('event').insert(events.map(event => ({
15
- id: event.id,
16
- entityId: event.entityId,
17
- entityName: event.entityName,
18
- name: event.name,
19
- body: event.body,
20
- occurredOn: event.occurredOn,
21
- traceId: event.traceId,
22
- })));
16
+ const trx = await this.knex.getMasterTrx();
17
+ const dbFormattedEvents = events.map(event => event.toDto());
18
+ await trx('event').insert(dbFormattedEvents);
19
+ await trx('unpublishedEvent').insert(dbFormattedEvents);
20
+ }
21
+ async deleteUnpublished(events) {
22
+ const ids = events.map(item => item.id);
23
+ if (ids.length === 0) {
24
+ return;
25
+ }
26
+ const trx = await this.knex.getMasterTrx();
27
+ await trx('unpublishedEvent').delete().whereIn('id', ids);
23
28
  }
24
- async findEntities(options = {}) {
25
- const { id, entityId, entityName } = options;
26
- const trx = await this.knex.getTrx();
27
- const qb = trx('event');
29
+ async findEntities(options = {}, table = 'event') {
30
+ const { id, entityId, entityName, limit } = options;
31
+ const trx = await this.knex.getMasterTrx();
32
+ const qb = trx(table);
28
33
  if (id) {
29
34
  if (Array.isArray(id)) {
30
35
  qb.whereIn('id', id);
@@ -39,6 +44,15 @@ class EventKnexRepository extends repository_1.BaseEventRepository {
39
44
  if (entityName) {
40
45
  qb.where('entityName', entityName);
41
46
  }
47
+ if (entityName) {
48
+ qb.where('entityName', entityName);
49
+ }
50
+ if (limit) {
51
+ qb.limit(limit);
52
+ }
53
+ if (table === 'unpublishedEvent') {
54
+ qb.forUpdate().skipLocked();
55
+ }
42
56
  const rows = await qb;
43
57
  return rows.map(row => {
44
58
  const { name, ...eventData } = row;
@@ -47,6 +61,16 @@ class EventKnexRepository extends repository_1.BaseEventRepository {
47
61
  return event;
48
62
  });
49
63
  }
64
+ createEvent(name, row) {
65
+ return new domain_1.DomainEvent({
66
+ body: row.body,
67
+ entityName: row.entityName,
68
+ entityId: row.entityId,
69
+ occurredOn: row.occurredOn,
70
+ traceId: row.traceId,
71
+ name,
72
+ });
73
+ }
50
74
  }
51
75
  exports.EventKnexRepository = EventKnexRepository;
52
76
  tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"event.knex.repository.js","sourceRoot":"","sources":["../src/event.knex.repository.ts"],"names":[],"mappings":";;;;AAAA,0CAGuB;AACvB,kDAG2B;AAE3B,2CAAwC;AAGxC,iDAA6C;AAqB7C,MAAsB,mBAAoB,SAAQ,gCAAmB;IAEjD,IAAI,CAAc;IAErB,KAAK,CAAC,GAAG,CAAC,KAAkC;QAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAErC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC9C,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;SACtB,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAEkB,KAAK,CAAC,YAAY,CAAC,UAAqC,EAAE;QAC5E,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QAE7C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAErC,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;QAExB,IAAI,EAAE,EAAE,CAAC;YACR,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBACvB,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACP,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpB,CAAC;QACF,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACd,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YAChB,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;QAEtB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACrB,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,GAAG,GAAG,CAAC;YACnC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAEhD,KAAK,CAAC,wBAAe,CAAC,GAAG,IAAI,CAAC;YAE9B,OAAO,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;IACJ,CAAC;CAGD;AAvDD,kDAuDC;AArDmB;IADlB,IAAA,eAAM,GAAE;sCACgB,0BAAW;iDAAC"}
1
+ {"version":3,"file":"event.knex.repository.js","sourceRoot":"","sources":["../src/event.knex.repository.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"event.migration.d.ts","sourceRoot":"","sources":["../src/event.migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,wBAAsB,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBlD;AACD,wBAAsB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpD"}
1
+ {"version":3,"file":"event.migration.d.ts","sourceRoot":"","sources":["../src/event.migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAoB5B,wBAAsB,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlD;AACD,wBAAsB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpD"}
@@ -2,21 +2,24 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.up = up;
4
4
  exports.down = down;
5
+ function createEventTable(table, knex) {
6
+ table.uuid('id').primary();
7
+ table.string('entityName').notNullable();
8
+ table.string('entityId').notNullable();
9
+ table.string('name').notNullable();
10
+ table.json('body').notNullable();
11
+ table.uuid('tractId').nullable();
12
+ table.timestamp('occurredOn').notNullable();
13
+ table.timestamp('createdAt').notNullable().defaultTo(knex.fn.now());
14
+ table.index(['entityName', 'entityId'], 'eventEntityIdx', { storageEngineIndexType: 'btree' });
15
+ table.index('occurredOn', 'eventOccurredOnIdx', { storageEngineIndexType: 'btree' });
16
+ }
5
17
  async function up(knex) {
6
- await knex.schema.createTable('event', table => {
7
- table.uuid('id').primary();
8
- table.string('entityName').notNullable();
9
- table.string('entityId').notNullable();
10
- table.string('name').notNullable();
11
- table.json('body').notNullable();
12
- table.uuid('tractId').nullable();
13
- table.timestamp('occurredOn').notNullable();
14
- table.timestamp('createdAt').notNullable().defaultTo(knex.fn.now());
15
- table.index(['entityName', 'entityId'], 'eventEntityIdx', { storageEngineIndexType: 'btree' });
16
- table.index('occurredOn', 'eventOccurredOnIdx', { storageEngineIndexType: 'btree' });
17
- });
18
+ await knex.schema.createTable('event', table => createEventTable(table, knex));
19
+ await knex.schema.createTable('unpublishedEvent', table => createEventTable(table, knex));
18
20
  }
19
21
  async function down(knex) {
20
22
  await knex.schema.dropTable('event');
23
+ await knex.schema.dropTable('unpublishedEvent');
21
24
  }
22
25
  //# sourceMappingURL=event.migration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event.migration.js","sourceRoot":"","sources":["../src/event.migration.ts"],"names":[],"mappings":";;AAEA,gBAkBC;AACD,oBAEC;AArBM,KAAK,UAAU,EAAE,CAAC,IAAU;IAClC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;QAC9C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QAE3B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;QACzC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QAEvC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAEjC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;QAEjC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5C,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAEpE,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,gBAAgB,EAAE,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/F,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,oBAAoB,EAAE,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,CAAC;IACtF,CAAC,CAAC,CAAC;AACJ,CAAC;AACM,KAAK,UAAU,IAAI,CAAC,IAAU;IACpC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"event.migration.js","sourceRoot":"","sources":["../src/event.migration.ts"],"names":[],"mappings":";;AAoBA,gBAGC;AACD,oBAGC;AAzBD,SAAS,gBAAgB,CAAC,KAA8B,EAAE,IAAU;IACnE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IAE3B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IACzC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;IAEvC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAEjC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;IAEjC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5C,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IAEpE,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,gBAAgB,EAAE,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/F,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,oBAAoB,EAAE,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,CAAC;AACtF,CAAC;AAEM,KAAK,UAAU,EAAE,CAAC,IAAU;IAClC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/E,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAC3F,CAAC;AACM,KAAK,UAAU,IAAI,CAAC,IAAU;IACpC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;AACjD,CAAC"}
@@ -7,7 +7,8 @@ export declare class KnexService implements OnModuleInit, OnModuleDestroy {
7
7
  private initHook;
8
8
  private readonly transactionStorage;
9
9
  private connection;
10
- getTrx(): Promise<Knex.Transaction>;
10
+ getReplicaTrx(): Promise<Knex.Transaction>;
11
+ getMasterTrx(): Promise<Knex.Transaction>;
11
12
  runInTransaction<T>(callback: () => Promise<T>): Promise<T>;
12
13
  onModuleInit(): Promise<void>;
13
14
  onModuleDestroy(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"knex.service.d.ts","sourceRoot":"","sources":["../src/knex.service.ts"],"names":[],"mappings":"AAIA,OAAO,EAEN,eAAe,EACf,YAAY,EACZ,MAAM,gBAAgB,CAAC;AAExB,OAAa,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAKlC,qBAAa,WAAY,YAAW,YAAY,EAAE,eAAe;IAEhE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IAEpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAE9C,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAwD;IAE3F,OAAO,CAAC,UAAU,CAAc;IAEnB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;IAMnC,gBAAgB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAM3D,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;YAI/B,YAAY;YAYZ,0BAA0B;YAM1B,yBAAyB;CAevC"}
1
+ {"version":3,"file":"knex.service.d.ts","sourceRoot":"","sources":["../src/knex.service.ts"],"names":[],"mappings":"AAIA,OAAO,EAEN,eAAe,EACf,YAAY,EACZ,MAAM,gBAAgB,CAAC;AAExB,OAAa,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAelC,qBAAa,WAAY,YAAW,YAAY,EAAE,eAAe;IAEhE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IAEpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAE9C,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA8C;IAEjF,OAAO,CAAC,UAAU,CAAc;IAEnB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;IAO1C,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;IAQzC,gBAAgB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAW3D,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;YAI/B,YAAY;YAYZ,0BAA0B;YAM1B,yBAAyB;CAqCvC"}
@@ -16,13 +16,23 @@ class KnexService {
16
16
  initHook = null;
17
17
  transactionStorage = new async_context_1.AsyncContextProvider();
18
18
  connection;
19
- async getTrx() {
20
- const provider = this.transactionStorage.getOrFail();
21
- return provider();
19
+ async getReplicaTrx() {
20
+ const { replica } = this.transactionStorage.getOrFail();
21
+ replica.isOpened = true;
22
+ return replica.getTrx();
23
+ }
24
+ async getMasterTrx() {
25
+ const { master } = this.transactionStorage.getOrFail();
26
+ master.isOpened = true;
27
+ return master.getTrx();
22
28
  }
23
29
  async runInTransaction(callback) {
24
30
  const trxProvider = await this.getKnexTransactionProvider();
25
- return this.transactionStorage.run(trxProvider, async () => this.transactionStorageHandler(callback));
31
+ const context = {
32
+ master: { getTrx: trxProvider, isOpened: false },
33
+ replica: { getTrx: trxProvider, isOpened: false },
34
+ };
35
+ return this.transactionStorage.run(context, async () => this.transactionStorageHandler(callback));
26
36
  }
27
37
  async onModuleInit() {
28
38
  if (!this.initHook) {
@@ -49,13 +59,27 @@ class KnexService {
49
59
  async transactionStorageHandler(callback) {
50
60
  try {
51
61
  const result = await callback();
52
- const trx = await this.getTrx();
53
- await trx.commit();
62
+ const context = this.transactionStorage.getOrFail();
63
+ if (context.master.isOpened) {
64
+ const trx = await context.master.getTrx();
65
+ await trx.commit();
66
+ }
67
+ if (context.replica.isOpened) {
68
+ const trx = await context.replica.getTrx();
69
+ await trx.rollback();
70
+ }
54
71
  return result;
55
72
  }
56
73
  catch (error) {
57
- const trx = await this.getTrx();
58
- await trx.rollback();
74
+ const context = this.transactionStorage.getOrFail();
75
+ if (context.master.isOpened) {
76
+ const trx = await context.master.getTrx();
77
+ await trx.rollback();
78
+ }
79
+ if (context.replica.isOpened) {
80
+ const trx = await context.replica.getTrx();
81
+ await trx.rollback();
82
+ }
59
83
  throw error;
60
84
  }
61
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"knex.service.js","sourceRoot":"","sources":["../src/knex.service.ts"],"names":[],"mappings":";;;;AAAA,wDAA4D;AAC5D,0DAAsD;AACtD,0CAAuC;AAEvC,2CAIwB;AAExB,wDAAkC;AAElC,uDAAmD;AACnD,+CAA2C;AAE3C,MAAa,WAAW;IAEN,MAAM,CAAa;IAEnB,MAAM,CAAS;IAEf,aAAa,CAAgB;IAEtC,QAAQ,GAAyB,IAAI,CAAC;IAC7B,kBAAkB,GAAG,IAAI,oCAAoB,EAA4B,CAAC;IAEnF,UAAU,CAAc;IAEzB,KAAK,CAAC,MAAM;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;QAErD,OAAO,QAAQ,EAAE,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAI,QAA0B;QAC1D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAE5D,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,IAAG,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtG,CAAC;IAEM,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAEM,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;IAClC,CAAC;IAEO,KAAK,CAAC,YAAY;QACzB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAE/B,MAAM,MAAM,GAAG,MAAM,gCAAc,CAAC,KAAK,CAAC;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa,EAAE,IAAI,CAAC,aAAa;SACjC,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,GAAG,IAAA,cAAI,EAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAEO,KAAK,CAAC,0BAA0B;QACvC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAE1B,OAAO,IAAI,CAAC,UAAW,CAAC,mBAAmB,EAAE,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,yBAAyB,CAAI,QAA0B;QACpE,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,QAAQ,EAAE,CAAC;YAEhC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAEhC,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;YAEnB,OAAO,MAAM,CAAC;QACf,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC;CACD;AAtED,kCAsEC;AApEiB;IADhB,IAAA,eAAM,GAAE;sCACgB,wBAAU;2CAAC;AAEnB;IADhB,IAAA,eAAM,GAAE;sCACgB,eAAM;2CAAC;AAEf;IADhB,IAAA,eAAM,GAAE;sCACuB,8BAAa;kDAAC"}
1
+ {"version":3,"file":"knex.service.js","sourceRoot":"","sources":["../src/knex.service.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ class PostgresTestcontainerService {
22
22
  }
23
23
  async onApplicationBootstrap() {
24
24
  await this.postgres.runInTransaction(async () => {
25
- const trx = await this.postgres.getTrx();
25
+ const trx = await this.postgres.getMasterTrx();
26
26
  await trx.migrate.latest();
27
27
  await trx.seed.run();
28
28
  });
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-testcontainer.service.js","sourceRoot":"","sources":["../../src/test-containers/postgres-testcontainer.service.ts"],"names":[],"mappings":";;;;AAAA,2CAKwB;AAExB,2DAGoC;AAEpC,gDAA4C;AAC5C,kDAA8C;AAE9C,MAAa,4BAA4B;IAEvB,MAAM,CAAa;IAEnB,QAAQ,CAAc;IAE/B,SAAS,CAA6B;IAEtC,WAAW,GAA4B,IAAI,CAAC;IAEpD;QACC,IAAI,CAAC,YAAY,EAAE,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAEM,KAAK,CAAC,sBAAsB;QAClC,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,IAAG,EAAE;YAC9C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAEzC,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,cAAc;QAC3B,MAAM,SAAS,GAAG,IAAI,gCAAmB,CAAC,UAAU,CAAC;aACnD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;aAClC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;aAC9B,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;aAClC,gBAAgB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAEhE,IAAI,CAAC,SAAS,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,aAAa;QAC1B,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IAEO,YAAY;QAEnB,MAAM,gBAAgB,GAAG,0BAAW,CAAC,SAAS,CAAC,YAAY,CAAC;QAE5D,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,0BAAW,CAAC,SAAS,CAAC,YAAY,GAAG,KAAK;YACzC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC;IACH,CAAC;CACD;AA5DD,oEA4DC;AA1DiB;IADhB,IAAA,eAAM,GAAE;sCACgB,wBAAU;4DAAC;AAEnB;IADhB,IAAA,eAAM,GAAE;sCACkB,0BAAW;8DAAC"}
1
+ {"version":3,"file":"postgres-testcontainer.service.js","sourceRoot":"","sources":["../../src/test-containers/postgres-testcontainer.service.ts"],"names":[],"mappings":";;;;AAAA,2CAKwB;AAExB,2DAGoC;AAEpC,gDAA4C;AAC5C,kDAA8C;AAE9C,MAAa,4BAA4B;IAEvB,MAAM,CAAa;IAEnB,QAAQ,CAAc;IAE/B,SAAS,CAA6B;IAEtC,WAAW,GAA4B,IAAI,CAAC;IAEpD;QACC,IAAI,CAAC,YAAY,EAAE,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAEM,KAAK,CAAC,sBAAsB;QAClC,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,IAAG,EAAE;YAC9C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;YAE/C,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,cAAc;QAC3B,MAAM,SAAS,GAAG,IAAI,gCAAmB,CAAC,UAAU,CAAC;aACnD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;aAClC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;aAC9B,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;aAClC,gBAAgB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAEhE,IAAI,CAAC,SAAS,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,aAAa;QAC1B,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IAEO,YAAY;QAEnB,MAAM,gBAAgB,GAAG,0BAAW,CAAC,SAAS,CAAC,YAAY,CAAC;QAE5D,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,0BAAW,CAAC,SAAS,CAAC,YAAY,GAAG,KAAK;YACzC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC;IACH,CAAC;CACD;AA5DD,oEA4DC;AA1DiB;IADhB,IAAA,eAAM,GAAE;sCACgB,wBAAU;4DAAC;AAEnB;IADhB,IAAA,eAAM,GAAE;sCACkB,0BAAW;8DAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hg-ts/knex",
3
- "version": "0.2.23",
3
+ "version": "0.2.24",
4
4
  "main": "dist/index.js",
5
5
  "exports": {
6
6
  ".": "./dist/index.js"
@@ -15,19 +15,19 @@
15
15
  "lint:ts:fix": "lint-ts --fix"
16
16
  },
17
17
  "devDependencies": {
18
- "@hg-ts-config/typescript": "0.2.23",
19
- "@hg-ts/async-context": "0.2.23",
20
- "@hg-ts/config-loader": "0.2.23",
21
- "@hg-ts/domain": "0.2.23",
22
- "@hg-ts/events": "0.2.23",
23
- "@hg-ts/exception": "0.2.23",
24
- "@hg-ts/execution-mode": "0.2.23",
25
- "@hg-ts/linter": "0.2.23",
26
- "@hg-ts/logger": "0.2.23",
27
- "@hg-ts/repository": "0.2.23",
28
- "@hg-ts/tests": "0.2.23",
29
- "@hg-ts/types": "0.2.23",
30
- "@hg-ts/validation": "0.2.23",
18
+ "@hg-ts-config/typescript": "0.2.24",
19
+ "@hg-ts/async-context": "0.2.24",
20
+ "@hg-ts/config-loader": "0.2.24",
21
+ "@hg-ts/domain": "0.2.24",
22
+ "@hg-ts/events": "0.2.24",
23
+ "@hg-ts/exception": "0.2.24",
24
+ "@hg-ts/execution-mode": "0.2.24",
25
+ "@hg-ts/linter": "0.2.24",
26
+ "@hg-ts/logger": "0.2.24",
27
+ "@hg-ts/repository": "0.2.24",
28
+ "@hg-ts/tests": "0.2.24",
29
+ "@hg-ts/types": "0.2.24",
30
+ "@hg-ts/validation": "0.2.24",
31
31
  "@nestjs/common": "11.1.0",
32
32
  "@types/node": "22.10.6",
33
33
  "@types/pg": "^8",
@@ -40,15 +40,15 @@
40
40
  "typescript": "5.7.3"
41
41
  },
42
42
  "peerDependencies": {
43
- "@hg-ts/async-context": "0.2.23",
44
- "@hg-ts/config-loader": "0.2.23",
45
- "@hg-ts/domain": "0.2.23",
46
- "@hg-ts/events": "0.2.23",
47
- "@hg-ts/exception": "0.2.23",
48
- "@hg-ts/execution-mode": "0.2.23",
49
- "@hg-ts/logger": "0.2.23",
50
- "@hg-ts/repository": "0.2.23",
51
- "@hg-ts/validation": "0.2.23",
43
+ "@hg-ts/async-context": "0.2.24",
44
+ "@hg-ts/config-loader": "0.2.24",
45
+ "@hg-ts/domain": "0.2.24",
46
+ "@hg-ts/events": "0.2.24",
47
+ "@hg-ts/exception": "0.2.24",
48
+ "@hg-ts/execution-mode": "0.2.24",
49
+ "@hg-ts/logger": "0.2.24",
50
+ "@hg-ts/repository": "0.2.24",
51
+ "@hg-ts/validation": "0.2.24",
52
52
  "@nestjs/common": "*",
53
53
  "knex": ">=3.1.0",
54
54
  "reflect-metadata": "*",