@photon-grove/evt 0.1.2 → 0.2.0

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.
Files changed (66) hide show
  1. package/README.md +15 -3
  2. package/dist/dynamodb/head.d.ts +6 -0
  3. package/dist/dynamodb/head.d.ts.map +1 -1
  4. package/dist/dynamodb/head.js +11 -0
  5. package/dist/dynamodb/head.js.map +1 -1
  6. package/dist/dynamodb/index.d.ts +1 -1
  7. package/dist/dynamodb/index.d.ts.map +1 -1
  8. package/dist/dynamodb/index.js +1 -1
  9. package/dist/dynamodb/index.js.map +1 -1
  10. package/dist/dynamodb/repository.d.ts +9 -2
  11. package/dist/dynamodb/repository.d.ts.map +1 -1
  12. package/dist/dynamodb/repository.js +114 -35
  13. package/dist/dynamodb/repository.js.map +1 -1
  14. package/dist/dynamodb/requests.d.ts +36 -5
  15. package/dist/dynamodb/requests.d.ts.map +1 -1
  16. package/dist/dynamodb/requests.js +56 -13
  17. package/dist/dynamodb/requests.js.map +1 -1
  18. package/dist/errors.d.ts +38 -4
  19. package/dist/errors.d.ts.map +1 -1
  20. package/dist/errors.js +45 -4
  21. package/dist/errors.js.map +1 -1
  22. package/dist/index.d.ts +3 -2
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +3 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/memory/repository.d.ts +3 -2
  27. package/dist/memory/repository.d.ts.map +1 -1
  28. package/dist/memory/repository.js +78 -29
  29. package/dist/memory/repository.js.map +1 -1
  30. package/dist/postgres/repository.d.ts +9 -2
  31. package/dist/postgres/repository.d.ts.map +1 -1
  32. package/dist/postgres/repository.js +107 -36
  33. package/dist/postgres/repository.js.map +1 -1
  34. package/dist/postgres/schema.d.ts.map +1 -1
  35. package/dist/postgres/schema.js +16 -0
  36. package/dist/postgres/schema.js.map +1 -1
  37. package/dist/repository.d.ts +75 -0
  38. package/dist/repository.d.ts.map +1 -1
  39. package/dist/repository.js +89 -3
  40. package/dist/repository.js.map +1 -1
  41. package/dist/staging.d.ts +28 -0
  42. package/dist/staging.d.ts.map +1 -0
  43. package/dist/staging.js +89 -0
  44. package/dist/staging.js.map +1 -0
  45. package/dist/store.d.ts +11 -1
  46. package/dist/store.d.ts.map +1 -1
  47. package/dist/store.js +30 -71
  48. package/dist/store.js.map +1 -1
  49. package/dist/transaction.d.ts +113 -0
  50. package/dist/transaction.d.ts.map +1 -0
  51. package/dist/transaction.js +207 -0
  52. package/dist/transaction.js.map +1 -0
  53. package/package.json +1 -1
  54. package/src/dynamodb/head.ts +15 -0
  55. package/src/dynamodb/index.ts +1 -0
  56. package/src/dynamodb/repository.ts +162 -41
  57. package/src/dynamodb/requests.ts +98 -14
  58. package/src/errors.ts +63 -4
  59. package/src/index.ts +16 -7
  60. package/src/memory/repository.ts +93 -32
  61. package/src/postgres/repository.ts +133 -48
  62. package/src/postgres/schema.ts +16 -0
  63. package/src/repository.ts +169 -2
  64. package/src/staging.ts +138 -0
  65. package/src/store.ts +47 -96
  66. package/src/transaction.ts +322 -0
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/memory/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/memory/repository.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { SerializedEvent, SerializedSnapshot } from '../event.js';
2
- import { type CallOptions, type Commit, type Repository, type StoreInitializer } from '../repository.js';
2
+ import { type CallOptions, type Commit, type StoreInitializer, type TransactionCommit, type TransactionalRepository } from '../repository.js';
3
3
  import type { PgClient } from './client.js';
4
4
  import { type PgTables } from './schema.js';
5
5
  /** The tables a {@link PgRepository} stores its event log in. */
@@ -24,7 +24,7 @@ export declare const POSTGRES_BACKEND = "postgres";
24
24
  * it validated. Every commit and snapshot write reads the manifest again under a shared lock that
25
25
  * no declaration can take while the write is open, and validates it again when it changed.
26
26
  */
27
- export declare class PgRepository implements Repository, StoreInitializer {
27
+ export declare class PgRepository implements TransactionalRepository, StoreInitializer {
28
28
  #private;
29
29
  /**
30
30
  * Takes the client and the table names, which must be plain identifiers that fit their limits
@@ -45,6 +45,13 @@ export declare class PgRepository implements Repository, StoreInitializer {
45
45
  */
46
46
  initialize(options?: CallOptions): Promise<boolean>;
47
47
  commit(commit: Commit, options?: CallOptions): Promise<void>;
48
+ /**
49
+ * Commits every stream and checks every fence in one transaction, in the order Go and Rust run
50
+ * it: every stream's entity lock, written and fenced, in ascending entity-ID byte order; the
51
+ * marker check, the fences' retention and the rebuild-lock assertion; every head statement and
52
+ * fence read, ranked; the event inserts; then the snapshot upserts.
53
+ */
54
+ commitTransaction(transaction: TransactionCommit, options?: CallOptions): Promise<void>;
48
55
  events(entityId: string, options?: CallOptions): Promise<SerializedEvent[]>;
49
56
  eventsAfter(entityId: string, after: bigint, options?: CallOptions): Promise<SerializedEvent[]>;
50
57
  latest(entityId: string, n: number, options?: CallOptions): Promise<SerializedEvent[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../src/postgres/repository.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,aAAa,CAAA;AAYpE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,gBAAgB,EAKtB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAA;AACpE,OAAO,EAIL,KAAK,QAAQ,EAUd,MAAM,aAAa,CAAA;AAEpB,iEAAiE;AACjE,MAAM,WAAW,mBAAmB;IAClC,+FAA+F;IAC/F,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,aAAa,CAAA;AAgB1C;;;;;;;;;;;;GAYG;AACH,qBAAa,YAAa,YAAW,UAAU,EAAE,gBAAgB;;IAS/D;;;OAGG;IACH,YAAY,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAE,mBAAwB,EAG9D;IAED,yEAAyE;IACzE,IAAI,MAAM,IAAI,QAAQ,CAErB;IAED;;;OAGG;IACG,YAAY,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAOvD;IAED;;;;OAIG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CA0BxD;IAEK,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgEjE;IAEK,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAShF;IAEK,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,eAAe,EAAE,CAAC,CAU5B;IAEK,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAgB3F;IAEK,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAU1F;IAEK,WAAW,CAAC,QAAQ,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAsBvF;IAEK,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAuC5F;CAkRF"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../src/postgres/repository.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,aAAa,CAAA;AAYpE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,MAAM,EAEX,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAQ7B,MAAM,kBAAkB,CAAA;AAEzB,OAAO,KAAK,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAA;AACpE,OAAO,EAIL,KAAK,QAAQ,EAUd,MAAM,aAAa,CAAA;AAEpB,iEAAiE;AACjE,MAAM,WAAW,mBAAmB;IAClC,+FAA+F;IAC/F,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,aAAa,CAAA;AAkB1C;;;;;;;;;;;;GAYG;AACH,qBAAa,YAAa,YAAW,uBAAuB,EAAE,gBAAgB;;IAS5E;;;OAGG;IACH,YAAY,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAE,mBAAwB,EAG9D;IAED,yEAAyE;IACzE,IAAI,MAAM,IAAI,QAAQ,CAErB;IAED;;;OAGG;IACG,YAAY,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAOvD;IAED;;;;OAIG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CA0BxD;IAEK,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAOjE;IAED;;;;;OAKG;IACG,iBAAiB,CAAC,WAAW,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAM5F;IAsHK,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAShF;IAEK,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,eAAe,EAAE,CAAC,CAW5B;IAEK,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAgB3F;IAEK,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAU1F;IAEK,WAAW,CAAC,QAAQ,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAsBvF;IAEK,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAuC5F;CAoRF"}
@@ -7,15 +7,18 @@
7
7
  //
8
8
  // Each statement of a transaction needs the one before it, so they await in loops on purpose.
9
9
  /* oxlint-disable no-await-in-loop */
10
- import { CompactionUncoveredError, ConflictError, EvtError, HistoryDependentProjectionError, RebuildInProgressError, SequenceGapError, StreamHeadDriftError, StreamHeadsNotMigratedError, TransientError, } from '../errors.js';
10
+ import { CompactionUncoveredError, ConflictError, EvtError, FenceConflictError, HistoryDependentProjectionError, RebuildInProgressError, SequenceGapError, StreamHeadDriftError, StreamHeadsNotMigratedError, TransientError, } from '../errors.js';
11
11
  import { checkSupported, checkWritable, declaresStreamHeads, decodeManifest, encodeManifest, withStreamHeads, } from '../features.js';
12
12
  import { int64Argument } from '../fields.js';
13
13
  import { decodeMetadata, emptyMetadata, encodeMetadata } from '../metadata.js';
14
- import { checkBudget, checkNotReserved, commitSizes, validateCommit, } from '../repository.js';
14
+ import { checkBudget, checkFenceRetention, checkNotReserved, normalizeTransaction, rankFailures, transactionSizes, validateCommit, } from '../repository.js';
15
+ import { compareUtf8 } from '../utf8.js';
15
16
  import { ENGINE_LOCK_EXCLUSIVE, ENGINE_LOCK_SHARED, ENTITY_LOCK, SCHEMA_LOCK, featuresLockKey, featuresTable, pgTables, rebuildGenerationTable, rebuildLockKey, rebuildLockTable, schemaDdl, streamHeadsTable, } from './schema.js';
16
17
  /** The backend name a projector group for the PostgreSQL repository would carry. */
17
18
  export const POSTGRES_BACKEND = 'postgres';
18
- // The event columns every read selects, each as text, so no driver parses a stored value.
19
+ // The event columns every read selects, each as text, so no driver parses a stored value. An
20
+ // ORDER BY names the table's column, since a bare `sequence` would sort the text alias: 10
21
+ // before 9.
19
22
  const EVENT_COLUMNS = 'event_id, sequence::text AS sequence, event_type, version::text AS version, entity_id, ' +
20
23
  "entity_type, encode(payload, 'hex') AS payload, metadata::text AS metadata";
21
24
  // SQLSTATEs for which PostgreSQL rolled the transaction back and a retry may not hit again: a
@@ -97,59 +100,126 @@ export class PgRepository {
97
100
  options?.signal?.throwIfAborted();
98
101
  validateCommit(commit);
99
102
  checkNotReserved(commit.entityId);
100
- if (commit.events.length === 0) {
101
- return;
103
+ if (commit.events.length > 0) {
104
+ await this.#write(normalizeTransaction({ streams: [commit] }), options);
102
105
  }
103
- for (const group of commit.projections ?? []) {
106
+ }
107
+ /**
108
+ * Commits every stream and checks every fence in one transaction, in the order Go and Rust run
109
+ * it: every stream's entity lock, written and fenced, in ascending entity-ID byte order; the
110
+ * marker check, the fences' retention and the rebuild-lock assertion; every head statement and
111
+ * fence read, ranked; the event inserts; then the snapshot upserts.
112
+ */
113
+ async commitTransaction(transaction, options) {
114
+ options?.signal?.throwIfAborted();
115
+ const normalized = normalizeTransaction(transaction);
116
+ if (normalized.streams.length > 0 || normalized.fences.length > 0) {
117
+ await this.#write(normalized, options);
118
+ }
119
+ }
120
+ async #write(transaction, options) {
121
+ for (const group of transaction.projections) {
104
122
  if (group.backend !== POSTGRES_BACKEND || group.operations.length > 0) {
105
123
  throw new EvtError('invalidCommit', `invalid commit: a PostgreSQL repository can't write a ${group.backend} projector group`);
106
124
  }
107
125
  }
108
126
  // Every backend budgets a commit the same way, so an oversized one fails before any request.
109
- checkBudget(commitSizes(commit, () => undefined));
127
+ checkBudget(transactionSizes(transaction, () => undefined));
110
128
  await this.#ensureStreamHeads(options);
111
- const { entityId, events } = commit;
112
- const first = events[0].sequence;
113
- const last = events.at(-1).sequence;
114
129
  await this.#transaction(options, async (run) => {
115
- await run(ENTITY_LOCK, [entityId]);
116
- await this.#checkManifest(run);
130
+ // Each stream once, in the bytewise order that also pins the transaction, so two
131
+ // transactions that share streams lock them in the same sequence and can't deadlock.
132
+ const ids = [...transaction.streams, ...transaction.fences].map(({ entityId }) => entityId);
133
+ ids.sort(compareUtf8);
134
+ for (const [index, entityId] of ids.entries()) {
135
+ if (ids[index - 1] !== entityId) {
136
+ await run(ENTITY_LOCK, [entityId]);
137
+ }
138
+ }
139
+ const manifest = await this.#checkManifest(run);
140
+ const retention = manifest.retention;
141
+ checkFenceRetention(transaction, (entityType) => retention.includes(entityType));
117
142
  await this.#assertNoRebuildLock(run);
118
- if (!(await this.#moveHead(run, entityId, events[0].entityType, first, last))) {
119
- throw await this.#probe(run, entityId, first);
143
+ // Every head statement and fence read runs before any failure is reported, so the ranking
144
+ // sees them all.
145
+ const moved = [];
146
+ for (const stream of transaction.streams) {
147
+ const { entityId, events } = stream;
148
+ const first = events[0].sequence;
149
+ const last = events.at(-1).sequence;
150
+ moved.push(await this.#moveHead(run, entityId, events[0].entityType, first, last));
120
151
  }
121
- for (const event of events) {
122
- if (!(await this.#insertEvent(run, event))) {
123
- // The head statement passed and the row exists: an event sits above the head. The
124
- // entity lock rules out a racing writer.
125
- throw drift(entityId, first - 1n, await this.#derivedHead(run, entityId));
152
+ const stale = [];
153
+ for (const fence of transaction.fences) {
154
+ if ((await this.#storedHead(run, fence.entityId)) !== fence.head) {
155
+ stale.push(fence);
126
156
  }
127
157
  }
128
- const snapshot = commit.snapshot;
129
- if (snapshot) {
130
- const rows = await run(`SELECT sequence::text AS sequence FROM ${this.#tables.snapshots} WHERE entity_id = $1`, [entityId]);
131
- const stored = rows[0] === undefined ? null : BigInt(text(rows[0], 'sequence'));
132
- if (stored === null && snapshot.sequence !== 1n) {
133
- throw new ConflictError(entityId, `snapshot sequence ${snapshot.sequence} has no stored predecessor`);
134
- }
135
- if (stored !== null && snapshot.sequence !== stored + 1n) {
136
- throw new ConflictError(entityId, `snapshot sequence moved: stored ${stored}, commit writes ${snapshot.sequence}`);
158
+ const failures = [];
159
+ for (const [index, stream] of transaction.streams.entries()) {
160
+ if (!moved[index]) {
161
+ failures.push(await this.#probe(run, stream.entityId, stream.events[0].sequence));
137
162
  }
138
- await this.#upsertSnapshot(run, { ...snapshot, entityId, eventSequence: last });
163
+ }
164
+ for (const fence of stale) {
165
+ // No first sequence: a fence that didn't drift is a fence conflict.
166
+ const verdict = await this.#probe(run, fence.entityId, 0n);
167
+ failures.push(verdict instanceof StreamHeadDriftError
168
+ ? verdict
169
+ : new FenceConflictError(fence.entityId, fence.head, fence.provenance));
170
+ }
171
+ const failure = rankFailures(failures);
172
+ if (failure !== undefined) {
173
+ throw failure;
174
+ }
175
+ for (const stream of transaction.streams) {
176
+ await this.#insertEvents(run, stream);
177
+ }
178
+ for (const stream of transaction.streams) {
179
+ await this.#writeCommitSnapshot(run, stream);
139
180
  }
140
181
  });
141
182
  }
183
+ // A stream's event inserts, after its head statement passed. A row that already exists is an
184
+ // event above the head: the entity lock rules out a racing writer.
185
+ async #insertEvents(run, stream) {
186
+ const first = stream.events[0].sequence;
187
+ for (const event of stream.events) {
188
+ if (!(await this.#insertEvent(run, event))) {
189
+ throw drift(stream.entityId, first - 1n, await this.#derivedHead(run, stream.entityId));
190
+ }
191
+ }
192
+ }
193
+ // A stream's commit snapshot, which must follow the stored one, as the DynamoDB put's condition
194
+ // requires.
195
+ async #writeCommitSnapshot(run, stream) {
196
+ const { entityId, snapshot } = stream;
197
+ if (!snapshot) {
198
+ return;
199
+ }
200
+ const rows = await run(`SELECT sequence::text AS sequence FROM ${this.#tables.snapshots} WHERE entity_id = $1`, [entityId]);
201
+ const stored = rows[0] === undefined ? null : BigInt(text(rows[0], 'sequence'));
202
+ if (stored === null && snapshot.sequence !== 1n) {
203
+ throw new ConflictError(entityId, `snapshot sequence ${snapshot.sequence} has no stored predecessor`);
204
+ }
205
+ if (stored !== null && snapshot.sequence !== stored + 1n) {
206
+ throw new ConflictError(entityId, `snapshot sequence moved: stored ${stored}, commit writes ${snapshot.sequence}`);
207
+ }
208
+ const eventSequence = stream.events.at(-1).sequence;
209
+ await this.#upsertSnapshot(run, { ...snapshot, entityId, eventSequence });
210
+ }
142
211
  async events(entityId, options) {
143
212
  options?.signal?.throwIfAborted();
144
213
  const rows = await this.#read(`SELECT ${EVENT_COLUMNS} FROM ${this.#tables.events} WHERE entity_id = $1 ` +
145
- 'ORDER BY sequence ASC', [entityId]);
214
+ `ORDER BY ${this.#tables.events}.sequence ASC`, [entityId]);
146
215
  return rows.map(eventFromRow);
147
216
  }
148
217
  async eventsAfter(entityId, after, options) {
149
218
  options?.signal?.throwIfAborted();
150
219
  int64Argument(after, 'after');
151
220
  const rows = await this.#read(`SELECT ${EVENT_COLUMNS} FROM ${this.#tables.events} ` +
152
- 'WHERE entity_id = $1 AND sequence > $2::bigint ORDER BY sequence ASC', [entityId, after.toString()]);
221
+ 'WHERE entity_id = $1 AND sequence > $2::bigint ' +
222
+ `ORDER BY ${this.#tables.events}.sequence ASC`, [entityId, after.toString()]);
153
223
  return rows.map(eventFromRow);
154
224
  }
155
225
  async latest(entityId, n, options) {
@@ -158,7 +228,7 @@ export class PgRepository {
158
228
  throw new EvtError('invalidArgument', `latest(n) requires a whole number of at least one event: got n = ${n}`);
159
229
  }
160
230
  const rows = await this.#read(`SELECT ${EVENT_COLUMNS} FROM ${this.#tables.events} WHERE entity_id = $1 ` +
161
- 'ORDER BY sequence DESC LIMIT $2::bigint', [entityId, n.toString()]);
231
+ `ORDER BY ${this.#tables.events}.sequence DESC LIMIT $2::bigint`, [entityId, n.toString()]);
162
232
  return rows.map(eventFromRow);
163
233
  }
164
234
  async snapshot(entityId, options) {
@@ -237,11 +307,12 @@ export class PgRepository {
237
307
  await run(ENGINE_LOCK_SHARED, [featuresLockKey(this.#tables)]);
238
308
  const manifest = await this.#readManifest(run);
239
309
  if (manifest !== null && manifest.version === this.#validated) {
240
- return;
310
+ return manifest;
241
311
  }
242
312
  this.#validated = null;
243
313
  checkWritable(manifest);
244
314
  this.#validated = manifest.version;
315
+ return manifest;
245
316
  }
246
317
  // The commit-time rebuild-lock assertion, under the rebuild fence's shared lock held to COMMIT:
247
318
  // a lock row, an expired one included, or an odd generation refuses the commit. A schema older
@@ -456,11 +527,11 @@ function transient(error) {
456
527
  return error;
457
528
  }
458
529
  // The statements of a DDL script, one at a time, since a driver's extended protocol runs one per
459
- // call. Each ends at a semicolon that ends its line and comes before a blank line, a CREATE, a DO
460
- // or the end, which no statement inside the DO block's body is followed by.
530
+ // call. Each ends at a semicolon that ends its line and comes before a blank line, a CREATE, an
531
+ // ALTER, a DO or the end, which no statement inside the DO block's body is followed by.
461
532
  function statements(ddl) {
462
533
  return ddl
463
- .split(/;\n(?=\n|CREATE |DO |$)/)
534
+ .split(/;\n(?=\n|CREATE |ALTER |DO |$)/)
464
535
  .map((statement) => statement.trim())
465
536
  .filter((statement) => statement !== '');
466
537
  }
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/postgres/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/postgres/repository.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/postgres/schema.ts"],"names":[],"mappings":"AAMA,gCAAgC;AAChC,eAAO,MAAM,oBAAoB,eAAe,CAAA;AAEhD,mCAAmC;AACnC,eAAO,MAAM,uBAAuB,kBAAkB,CAAA;AAEtD;;;;GAIG;AACH,eAAO,MAAM,cAAc,WAAW,CAAA;AAEtC;;;GAGG;AACH,eAAO,MAAM,2BAA2B,QAA8C,CAAA;AAEtF,2FAA2F;AAC3F,eAAO,MAAM,8BAA8B,QAAsB,CAAA;AAGjE,OAAO,CAAC,MAAM,SAAS,EAAE,OAAO,MAAM,CAAA;AAEtC;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,CAAA;CAC3B;AAkBD;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACtB,MAAM,GAAE,MAA6B,EACrC,SAAS,GAAE,MAAgC,GAC1C,QAAQ,CA0BV;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEtD;AAED,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEtD;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEzD;AAED,8FAA8F;AAC9F,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAE/D;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEzD;AAED,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CA6ElD;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,2DAA2D,CAAA;AAEnF;;;GAGG;AACH,eAAO,MAAM,WAAW,2DAA2D,CAAA;AAEnF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,kEAAkE,CAAA;AAEjG;;;GAGG;AACH,eAAO,MAAM,qBAAqB,2DAA2D,CAAA;AAE7F,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAExD;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEvD"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/postgres/schema.ts"],"names":[],"mappings":"AAMA,gCAAgC;AAChC,eAAO,MAAM,oBAAoB,eAAe,CAAA;AAEhD,mCAAmC;AACnC,eAAO,MAAM,uBAAuB,kBAAkB,CAAA;AAEtD;;;;GAIG;AACH,eAAO,MAAM,cAAc,WAAW,CAAA;AAEtC;;;GAGG;AACH,eAAO,MAAM,2BAA2B,QAA8C,CAAA;AAEtF,2FAA2F;AAC3F,eAAO,MAAM,8BAA8B,QAAsB,CAAA;AAGjE,OAAO,CAAC,MAAM,SAAS,EAAE,OAAO,MAAM,CAAA;AAEtC;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,CAAA;CAC3B;AAkBD;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACtB,MAAM,GAAE,MAA6B,EACrC,SAAS,GAAE,MAAgC,GAC1C,QAAQ,CA0BV;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEtD;AAED,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEtD;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEzD;AAED,8FAA8F;AAC9F,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAE/D;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEzD;AAED,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CA6FlD;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,2DAA2D,CAAA;AAEnF;;;GAGG;AACH,eAAO,MAAM,WAAW,2DAA2D,CAAA;AAEnF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,kEAAkE,CAAA;AAEjG;;;GAGG;AACH,eAAO,MAAM,qBAAqB,2DAA2D,CAAA;AAE7F,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAExD;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAEvD"}
@@ -135,10 +135,26 @@ CREATE TABLE IF NOT EXISTS ${outcomesTable(tables)} (
135
135
  rejection jsonb,
136
136
  code text,
137
137
  created_at timestamptz NOT NULL DEFAULT now(),
138
+ command_type text,
139
+ targets jsonb,
140
+ principal text,
138
141
  CHECK ((status = 'rejected' AND rejection IS NOT NULL AND code IS NOT NULL)
139
142
  OR (status = 'accepted' AND rejection IS NULL AND code IS NULL))
140
143
  );
141
144
 
145
+ DO $$
146
+ BEGIN
147
+ IF (SELECT count(*) FROM pg_attribute
148
+ WHERE attrelid = '${outcomesTable(tables)}'::regclass
149
+ AND attname IN ('command_type', 'targets', 'principal')
150
+ AND NOT attisdropped) < 3 THEN
151
+ ALTER TABLE ${outcomesTable(tables)}
152
+ ADD COLUMN IF NOT EXISTS command_type text,
153
+ ADD COLUMN IF NOT EXISTS targets jsonb,
154
+ ADD COLUMN IF NOT EXISTS principal text;
155
+ END IF;
156
+ END $$;
157
+
142
158
  CREATE TABLE IF NOT EXISTS ${featuresTable(tables)} (
143
159
  id integer PRIMARY KEY,
144
160
  version bigint NOT NULL,
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/postgres/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/postgres/schema.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { EvtError, type FenceProvenance } from './errors.js';
1
2
  import { type SerializedEvent, type SerializedSnapshot } from './event.js';
2
3
  /** A snapshot to write with a commit. Its event sequence is the commit's last event. */
3
4
  export interface NewSnapshot {
@@ -117,6 +118,74 @@ export interface StoreInitializer {
117
118
  */
118
119
  initialize(options?: CallOptions): Promise<boolean>;
119
120
  }
121
+ /**
122
+ * A stream a transaction read but doesn't write, whose head must not move before it commits (ADR
123
+ * 0007): the fence passes while the stream's stored head still equals `head`.
124
+ */
125
+ export interface ReadFence {
126
+ entityId: string;
127
+ /** The stream's entity type, which a fence on a retained type is refused for. */
128
+ entityType: string;
129
+ /** The head the transaction observed: 0 for a stream with no events. */
130
+ head: bigint;
131
+ /** Whether the engine read the head itself, or the caller stamped it. */
132
+ provenance: FenceProvenance;
133
+ }
134
+ /**
135
+ * Everything one transaction writes atomically: the streams it appends to, and fences on the
136
+ * streams it read. A fence on a stream the transaction also writes is dropped, since that stream's
137
+ * head update already conditions on the head it read. A transaction that writes nothing and fences
138
+ * nothing is a no-op.
139
+ */
140
+ export interface TransactionCommit {
141
+ /** The streams written, each a {@link Commit}, at most one per stream. */
142
+ streams: readonly Commit[];
143
+ /** The streams read but not written, at most one fence per stream. */
144
+ fences?: readonly ReadFence[] | null | undefined;
145
+ }
146
+ /**
147
+ * A repository that commits several streams atomically, with read fences (ADR 0004). A
148
+ * transaction is refused as a commit is, and also:
149
+ *
150
+ * - with `invalidCommit` when it writes a stream twice, fences a stream twice, fences at a head
151
+ * below 0 or at the largest int64, or carries a snapshot for a stream it writes no events to;
152
+ * - with a {@link RetentionConflictError} when it fences an entity type with retention: by the
153
+ * repository's own configuration before any request, and by the store's manifest after the
154
+ * manifest's other refusals, but always before the rebuild lock's;
155
+ * - with a {@link FenceConflictError} when a fenced stream's head moved, unless the stream
156
+ * drifted, ranked after every drift and gap of the transaction, in transaction order.
157
+ */
158
+ export interface TransactionalRepository extends Repository {
159
+ /** Appends to every stream and checks every fence atomically. */
160
+ commitTransaction(transaction: TransactionCommit, options?: CallOptions): Promise<void>;
161
+ }
162
+ /** A transaction as the backends write it. */
163
+ export interface NormalizedTransaction {
164
+ /** The streams it writes events to, sorted by entity ID bytes, without their projections. */
165
+ readonly streams: readonly Commit[];
166
+ /** Its fences on the streams it doesn't write, sorted the same way. */
167
+ readonly fences: readonly ReadFence[];
168
+ /** The written streams' projector groups, in the order the streams were declared. */
169
+ readonly projections: readonly ProjectorGroup[];
170
+ }
171
+ /**
172
+ * Validates a transaction and puts it in the order every backend writes it: the written streams,
173
+ * then the fences, each sorted by entity ID bytes, the order that pins a DynamoDB transaction and
174
+ * PostgreSQL's locks. The projector groups keep the order the streams were declared in. Streams
175
+ * without events are dropped, and so are the fences on streams that write events, whose head
176
+ * updates condition on the head they read. A fence on a stream listed without events stays.
177
+ */
178
+ export declare function normalizeTransaction(transaction: TransactionCommit): NormalizedTransaction;
179
+ /**
180
+ * Refuses a transaction that fences a retained entity type, by the store's manifest or the
181
+ * repository's own configuration.
182
+ */
183
+ export declare function checkFenceRetention(transaction: NormalizedTransaction, retained: (entityType: string) => boolean): void;
184
+ /**
185
+ * The error a failed transaction reports from the failures of its streams and fences, given in
186
+ * transaction order: the first drift, else the first gap, else the first of the rest.
187
+ */
188
+ export declare function rankFailures(failures: readonly EvtError[]): EvtError | undefined;
120
189
  /** The most actions one commit may carry, DynamoDB's transaction limit. */
121
190
  export declare const MAX_COMMIT_ACTIONS = 100;
122
191
  /** The most bytes one commit may carry, summed over its actions: 95% of DynamoDB's 4 MB. */
@@ -143,6 +212,12 @@ export declare function validateCommit(commit: Commit): void;
143
212
  * same way on each.
144
213
  */
145
214
  export declare function commitSizes(commit: Commit, ttl: (entityType: string) => number | undefined): number[];
215
+ /**
216
+ * The size of each action a transaction carries: the two control checks, every stream's projector
217
+ * operations, every written stream's head update, event puts and snapshot put, then a check on
218
+ * every fenced stream's head. Every backend budgets a transaction by these sizes.
219
+ */
220
+ export declare function transactionSizes(transaction: NormalizedTransaction, ttl: (entityType: string) => number | undefined): number[];
146
221
  /**
147
222
  * Refuses a commit whose actions are over the budget: more than {@link MAX_COMMIT_ACTIONS}, more
148
223
  * than {@link MAX_COMMIT_BYTES} in all, or one over {@link MAX_COMMIT_ITEM_BYTES}.
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"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"}