@adonis-agora/durable 0.6.0 → 0.6.1

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,5 +1,19 @@
1
1
  # @adonis-agora/durable
2
2
 
3
+ ## 0.6.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`ef0a9da`](https://github.com/DavideCarvalho/adonis-durable/commit/ef0a9dab56eb492bb8daef4c06d56685ff42060d) - DbTransport now honors worker-pool namespaces. Previously the `db` transport
8
+ ignored namespaces entirely: two engines on different namespaces sharing one
9
+ transport table set would cross-claim each other's tasks/results/heartbeats/
10
+ control and could stall runs (a result claimed by the wrong engine wrote a
11
+ `completed` checkpoint before throwing `NamespaceMismatch`). Every transport
12
+ row now carries a `namespace` column and every claim is scoped to it, matching
13
+ the queue/event-emitter transports. `"default"` (and absent) is byte-compatible
14
+ with the pre-namespace scheme; pre-existing transport tables are auto-upgraded
15
+ (the `namespace` column is back-filled to `'default'`).
16
+
3
17
  ## 0.5.0
4
18
 
5
19
  ### Minor Changes
@@ -1 +1 @@
1
- {"version":3,"file":"db-schema.d.ts","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAqE9E;AAED,0EAA0E;AAC1E,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAM5E"}
1
+ {"version":3,"file":"db-schema.d.ts","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAkF9E;AAcD,0EAA0E;AAC1E,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAM5E"}
@@ -33,6 +33,7 @@ export async function createDurableTransportTables(db) {
33
33
  table.integer('seq').notNullable();
34
34
  table.string('name').notNullable();
35
35
  table.string('grp').notNullable();
36
+ table.string('namespace').notNullable().defaultTo('default');
36
37
  table.text('input');
37
38
  table.string('traceparent');
38
39
  table.text('context');
@@ -41,7 +42,7 @@ export async function createDurableTransportTables(db) {
41
42
  table.string('claimed_by');
42
43
  table.bigInteger('claimed_at');
43
44
  table.bigInteger('created_at').notNullable();
44
- table.index(['grp', 'claimed_at', 'created_at'], 'durable_transport_tasks_grp_idx');
45
+ table.index(['namespace', 'grp', 'claimed_at', 'created_at'], 'durable_transport_tasks_grp_idx');
45
46
  });
46
47
  }
47
48
  // ── results: worker → engine (a StepResult) ────────────────────────────────
@@ -51,6 +52,7 @@ export async function createDurableTransportTables(db) {
51
52
  table.string('run_id').notNullable();
52
53
  table.integer('seq').notNullable();
53
54
  table.string('status').notNullable();
55
+ table.string('namespace').notNullable().defaultTo('default');
54
56
  table.text('output');
55
57
  table.text('error');
56
58
  table.bigInteger('started_at');
@@ -58,7 +60,7 @@ export async function createDurableTransportTables(db) {
58
60
  table.string('claimed_by');
59
61
  table.bigInteger('claimed_at');
60
62
  table.bigInteger('created_at').notNullable();
61
- table.index(['claimed_at', 'created_at'], 'durable_transport_results_idx');
63
+ table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_results_idx');
62
64
  });
63
65
  }
64
66
  // ── heartbeats: worker → engine (liveness for a long step) ─────────────────
@@ -69,10 +71,11 @@ export async function createDurableTransportTables(db) {
69
71
  table.integer('seq').notNullable();
70
72
  table.string('step_id').notNullable();
71
73
  table.string('grp').notNullable();
74
+ table.string('namespace').notNullable().defaultTo('default');
72
75
  table.string('claimed_by');
73
76
  table.bigInteger('claimed_at');
74
77
  table.bigInteger('created_at').notNullable();
75
- table.index(['claimed_at', 'created_at'], 'durable_transport_heartbeats_idx');
78
+ table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_heartbeats_idx');
76
79
  });
77
80
  }
78
81
  // ── control: best-effort control-plane messages (single-consumer) ──────────
@@ -80,12 +83,29 @@ export async function createDurableTransportTables(db) {
80
83
  await conn().createTable(TRANSPORT_TABLES.control, (table) => {
81
84
  table.increments('id').primary();
82
85
  table.text('payload').notNullable();
86
+ table.string('namespace').notNullable().defaultTo('default');
83
87
  table.string('claimed_by');
84
88
  table.bigInteger('claimed_at');
85
89
  table.bigInteger('created_at').notNullable();
86
- table.index(['claimed_at', 'created_at'], 'durable_transport_control_idx');
90
+ table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_control_idx');
87
91
  });
88
92
  }
93
+ // Upgrade path: a deployment created before namespaces existed already has these tables (so the
94
+ // guards above skipped them) but lacks the `namespace` column. Back-fill it — `notNullable` +
95
+ // `defaultTo('default')` stamps every legacy in-flight row `'default'`, so a default engine's
96
+ // `WHERE namespace='default'` claims exactly the rows it did before. Idempotent via `hasColumn`.
97
+ await ensureNamespaceColumn(db);
98
+ }
99
+ /** Add the `namespace` column (default `'default'`) to any transport table created before namespaces. */
100
+ async function ensureNamespaceColumn(db) {
101
+ for (const table of Object.values(TRANSPORT_TABLES)) {
102
+ const schema = db.connection().schema;
103
+ if (!(await schema.hasColumn(table, 'namespace'))) {
104
+ await db.connection().schema.alterTable(table, (t) => {
105
+ t.string('namespace').notNullable().defaultTo('default');
106
+ });
107
+ }
108
+ }
89
109
  }
90
110
  /** Drop every transport table. Used by tests and the migration `down`. */
91
111
  export async function dropDurableTransportTables(db) {
@@ -1 +1 @@
1
- {"version":3,"file":"db-schema.js","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db-schema.js","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,15 @@ export interface DbTransportOptions {
13
13
  * dispatches + consumes results/heartbeats.
14
14
  */
15
15
  group?: string;
16
+ /**
17
+ * Logical deployment namespace, stamped on every row this instance writes and required on every row
18
+ * it claims, so the same backend tables can host several worker-pool partitions without their
19
+ * tasks/results/heartbeats/control crossing. `"default"` (and absent) stamps/claims `'default'` —
20
+ * every row (incl. legacy rows back-filled by the migration) carries `'default'`, so a default
21
+ * engine's result set is UNCHANGED from the un-namespaced scheme. Passing it here is EXPLICIT and
22
+ * wins over a later {@link DbTransport.useNamespace} (the engine's propagation).
23
+ */
24
+ namespace?: string;
16
25
  /** Lucid connection name to use. Defaults to the `Database` default connection. */
17
26
  connectionName?: string;
18
27
  /** Poll interval (ms) for the result/task/heartbeat/control loops. Default 200ms. */
@@ -47,6 +56,11 @@ export interface DbTransportOptions {
47
56
  * its group). Call {@link start} to begin the engine-side pollers; `handle()` auto-starts the task
48
57
  * loop. The wire payloads are the documented `RemoteTask`/`StepResult` JSON.
49
58
  *
59
+ * Partitions by {@link DbTransportOptions.namespace} like the broker transports do: every row is
60
+ * stamped with the instance's namespace and every claim is scoped to it, so several worker-pool
61
+ * partitions can share ONE table set without cross-processing each other's work. `"default"` (and
62
+ * absent) is byte-compatible with the pre-namespace scheme (all rows carry `'default'`).
63
+ *
50
64
  * Usually you don't construct this directly: `config/durable.ts` selects it via
51
65
  * `transports.db({ ... })` and the provider builds it for you.
52
66
  */
@@ -55,6 +69,12 @@ export declare class DbTransport implements Transport, ControlPlane {
55
69
  constructor(options: DbTransportOptions);
56
70
  /** Stable id stamped on heartbeats, control `from`, and `claimed_by`. */
57
71
  get instanceId(): string;
72
+ /**
73
+ * Adopt `namespace` (the engine's, typically), scoping every write/claim to it — but ONLY if a
74
+ * namespace wasn't passed explicitly to the constructor (an explicit one always wins). Idempotent.
75
+ * Satisfies the optional `Transport.useNamespace` hook the engine calls when wiring a transport.
76
+ */
77
+ useNamespace(namespace: string): void;
58
78
  dispatch(task: RemoteTask): Promise<void>;
59
79
  /**
60
80
  * Register a step handler (worker side). Starts this group's task poll loop on the first call —
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAKzD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAqElE,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,EAAE,EAAE,QAAQ,CAAC;IACb;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qFAAqF;IACrF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4GAA4G;IAC5G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0GAA0G;IAC1G,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,WAAY,YAAW,SAAS,EAAE,YAAY;;gBAc7C,OAAO,EAAE,kBAAkB;IAYvC,yEAAyE;IACzE,IAAI,UAAU,IAAI,MAAM,CAEvB;IAoBK,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B/C;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI;IAW3C,4EAA4E;IACtE,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA4D/C,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI9D,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAyCxD,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxD,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAkFvD;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,kEAAkE;IAC5D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,mFAAmF;IAC7E,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAKzD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAqElE,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,EAAE,EAAE,QAAQ,CAAC;IACb;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mFAAmF;IACnF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qFAAqF;IACrF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4GAA4G;IAC5G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0GAA0G;IAC1G,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,WAAY,YAAW,SAAS,EAAE,YAAY;;gBAoB7C,OAAO,EAAE,kBAAkB;IAcvC,yEAAyE;IACzE,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IA6B/B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC/C;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI;IAW3C,4EAA4E;IACtE,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D/C,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI9D,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAyCxD,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAwFvD;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,kEAAkE;IAC5D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,mFAAmF;IAC7E,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
@@ -46,12 +46,23 @@ const DEFAULT_LOG = (err) => console.error('[DbTransport] poll failed', err);
46
46
  * its group). Call {@link start} to begin the engine-side pollers; `handle()` auto-starts the task
47
47
  * loop. The wire payloads are the documented `RemoteTask`/`StepResult` JSON.
48
48
  *
49
+ * Partitions by {@link DbTransportOptions.namespace} like the broker transports do: every row is
50
+ * stamped with the instance's namespace and every claim is scoped to it, so several worker-pool
51
+ * partitions can share ONE table set without cross-processing each other's work. `"default"` (and
52
+ * absent) is byte-compatible with the pre-namespace scheme (all rows carry `'default'`).
53
+ *
49
54
  * Usually you don't construct this directly: `config/durable.ts` selects it via
50
55
  * `transports.db({ ... })` and the provider builds it for you.
51
56
  */
52
57
  export class DbTransport {
53
58
  #db;
54
59
  #group;
60
+ // Logical deployment namespace stamped on every write and required on every claim. Mutable so an
61
+ // engine can push its namespace via `useNamespace()` — but only when one wasn't passed explicitly to
62
+ // the constructor (`#explicitNamespace`), which always wins. Resolved to a concrete column value
63
+ // (`'default'` for absent/default) by `#namespaceValue()`.
64
+ #namespace;
65
+ #explicitNamespace;
55
66
  #connectionName;
56
67
  #pollIntervalMs;
57
68
  #leaseMs;
@@ -65,6 +76,8 @@ export class DbTransport {
65
76
  constructor(options) {
66
77
  this.#db = options.db;
67
78
  this.#group = options.group;
79
+ this.#namespace = options.namespace;
80
+ this.#explicitNamespace = options.namespace !== undefined;
68
81
  this.#connectionName = options.connectionName;
69
82
  this.#pollIntervalMs = options.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
70
83
  this.#leaseMs = options.leaseMs ?? DEFAULT_LEASE_MS;
@@ -77,6 +90,21 @@ export class DbTransport {
77
90
  get instanceId() {
78
91
  return this.#instanceId;
79
92
  }
93
+ /**
94
+ * Adopt `namespace` (the engine's, typically), scoping every write/claim to it — but ONLY if a
95
+ * namespace wasn't passed explicitly to the constructor (an explicit one always wins). Idempotent.
96
+ * Satisfies the optional `Transport.useNamespace` hook the engine calls when wiring a transport.
97
+ */
98
+ useNamespace(namespace) {
99
+ if (this.#explicitNamespace)
100
+ return;
101
+ this.#namespace = namespace;
102
+ }
103
+ /** The concrete `namespace` column value this instance stamps/claims: the set namespace, or
104
+ * `'default'` when absent — so the un-namespaced and `"default"` schemes claim the same rows. */
105
+ #namespaceValue() {
106
+ return this.#namespace ?? 'default';
107
+ }
80
108
  #client() {
81
109
  return this.#connectionName ? this.#db.connection(this.#connectionName) : this.#db.connection();
82
110
  }
@@ -107,6 +135,7 @@ export class DbTransport {
107
135
  seq: task.seq,
108
136
  name: task.name,
109
137
  grp: task.group,
138
+ namespace: this.#namespaceValue(),
110
139
  input: toJson(task.input),
111
140
  traceparent: task.traceparent ?? null,
112
141
  context: toJson(task.context),
@@ -144,6 +173,7 @@ export class DbTransport {
144
173
  seq: beat.seq,
145
174
  step_id: beat.stepId,
146
175
  grp: beat.group,
176
+ namespace: this.#namespaceValue(),
147
177
  claimed_by: null,
148
178
  claimed_at: null,
149
179
  created_at: this.#now(),
@@ -179,6 +209,7 @@ export class DbTransport {
179
209
  run_id: result.runId,
180
210
  seq: result.seq,
181
211
  status: result.status,
212
+ namespace: this.#namespaceValue(),
182
213
  output: toJson(result.output),
183
214
  error: toJson(result.error),
184
215
  started_at: result.startedAt ?? null,
@@ -240,6 +271,7 @@ export class DbTransport {
240
271
  .table(TRANSPORT_TABLES.control)
241
272
  .insert({
242
273
  payload: JSON.stringify(stamped),
274
+ namespace: this.#namespaceValue(),
243
275
  claimed_by: null,
244
276
  claimed_at: null,
245
277
  created_at: this.#now(),
@@ -278,6 +310,10 @@ export class DbTransport {
278
310
  // than through Lucid's stricter query-builder typings, and we only need plain SQL here.
279
311
  const knex = this.#client().knexQuery();
280
312
  const stale = this.#now() - this.#leaseMs;
313
+ // Every claim is namespace-scoped: this instance only ever sees rows stamped with its own
314
+ // namespace, so two engines/workers on different namespaces sharing one table set never
315
+ // cross-claim each other's tasks/results/heartbeats/control.
316
+ const namespace = this.#namespaceValue();
281
317
  // Unique claim token for THIS round: instance id + a nanosecond stamp. Stored in `claimed_by` so
282
318
  // the SELECT-back returns only the rows this exact round won (never another round's, even from
283
319
  // the same instance).
@@ -287,6 +323,7 @@ export class DbTransport {
287
323
  const candidates = (await knex
288
324
  .from(table)
289
325
  .select(idCol)
326
+ .where('namespace', namespace)
290
327
  .modify((q) => {
291
328
  if (group !== undefined)
292
329
  q.where('grp', group);
@@ -302,6 +339,7 @@ export class DbTransport {
302
339
  await this.#client()
303
340
  .knexQuery()
304
341
  .from(table)
342
+ .where('namespace', namespace)
305
343
  .whereIn(idCol, ids)
306
344
  .where((q) => q.whereNull('claimed_at').orWhere('claimed_at', '<', stale))
307
345
  .update({ claimed_by: token, claimed_at: at });
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export default class extends BaseSchema {
18
18
  table.integer('seq').notNullable()
19
19
  table.string('name').notNullable()
20
20
  table.string('grp').notNullable()
21
+ table.string('namespace').notNullable().defaultTo('default')
21
22
  table.text('input')
22
23
  table.string('traceparent')
23
24
  table.text('context')
@@ -26,7 +27,7 @@ export default class extends BaseSchema {
26
27
  table.string('claimed_by')
27
28
  table.bigInteger('claimed_at')
28
29
  table.bigInteger('created_at').notNullable()
29
- table.index(['grp', 'claimed_at', 'created_at'], 'durable_transport_tasks_grp_idx')
30
+ table.index(['namespace', 'grp', 'claimed_at', 'created_at'], 'durable_transport_tasks_grp_idx')
30
31
  })
31
32
 
32
33
  this.schema.createTable('durable_transport_results', (table) => {
@@ -34,6 +35,7 @@ export default class extends BaseSchema {
34
35
  table.string('run_id').notNullable()
35
36
  table.integer('seq').notNullable()
36
37
  table.string('status').notNullable()
38
+ table.string('namespace').notNullable().defaultTo('default')
37
39
  table.text('output')
38
40
  table.text('error')
39
41
  table.bigInteger('started_at')
@@ -41,7 +43,7 @@ export default class extends BaseSchema {
41
43
  table.string('claimed_by')
42
44
  table.bigInteger('claimed_at')
43
45
  table.bigInteger('created_at').notNullable()
44
- table.index(['claimed_at', 'created_at'], 'durable_transport_results_idx')
46
+ table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_results_idx')
45
47
  })
46
48
 
47
49
  this.schema.createTable('durable_transport_heartbeats', (table) => {
@@ -50,19 +52,21 @@ export default class extends BaseSchema {
50
52
  table.integer('seq').notNullable()
51
53
  table.string('step_id').notNullable()
52
54
  table.string('grp').notNullable()
55
+ table.string('namespace').notNullable().defaultTo('default')
53
56
  table.string('claimed_by')
54
57
  table.bigInteger('claimed_at')
55
58
  table.bigInteger('created_at').notNullable()
56
- table.index(['claimed_at', 'created_at'], 'durable_transport_heartbeats_idx')
59
+ table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_heartbeats_idx')
57
60
  })
58
61
 
59
62
  this.schema.createTable('durable_transport_control', (table) => {
60
63
  table.increments('id').primary()
61
64
  table.text('payload').notNullable()
65
+ table.string('namespace').notNullable().defaultTo('default')
62
66
  table.string('claimed_by')
63
67
  table.bigInteger('claimed_at')
64
68
  table.bigInteger('created_at').notNullable()
65
- table.index(['claimed_at', 'created_at'], 'durable_transport_control_idx')
69
+ table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_control_idx')
66
70
  })
67
71
  }
68
72
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adonis-agora/durable",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "description": "Durable cross-app workflows for AdonisJS — deterministic replay engine, AdonisJS binding, ace commands, dashboard, OpenTelemetry, Telescope, testing harness and Redis admission, all in one package. Part of the Agora ecosystem.",
5
5
  "license": "MIT",
6
6
  "repository": {