effect-dynamodb 1.24.0 → 1.26.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.
- package/dist/Aggregate.d.ts +12 -2
- package/dist/Aggregate.d.ts.map +1 -1
- package/dist/Aggregate.js +284 -55
- package/dist/Aggregate.js.map +1 -1
- package/dist/Batch.d.ts +14 -5
- package/dist/Batch.d.ts.map +1 -1
- package/dist/Batch.js +184 -119
- package/dist/Batch.js.map +1 -1
- package/dist/Collection.d.ts +9 -1
- package/dist/Collection.d.ts.map +1 -1
- package/dist/Collection.js +5 -4
- package/dist/Collection.js.map +1 -1
- package/dist/DynamoClient.d.ts +80 -28
- package/dist/DynamoClient.d.ts.map +1 -1
- package/dist/DynamoClient.js +125 -25
- package/dist/DynamoClient.js.map +1 -1
- package/dist/Entity.d.ts +99 -40
- package/dist/Entity.d.ts.map +1 -1
- package/dist/Entity.js +693 -302
- package/dist/Entity.js.map +1 -1
- package/dist/EventStore.d.ts +598 -75
- package/dist/EventStore.d.ts.map +1 -1
- package/dist/EventStore.js +852 -221
- package/dist/EventStore.js.map +1 -1
- package/dist/Query.d.ts +100 -14
- package/dist/Query.d.ts.map +1 -1
- package/dist/Query.js +275 -71
- package/dist/Query.js.map +1 -1
- package/dist/StorageEncoding.d.ts +160 -0
- package/dist/StorageEncoding.d.ts.map +1 -0
- package/dist/StorageEncoding.js +258 -0
- package/dist/StorageEncoding.js.map +1 -0
- package/dist/Table.d.ts +56 -6
- package/dist/Table.d.ts.map +1 -1
- package/dist/Table.js +142 -60
- package/dist/Table.js.map +1 -1
- package/dist/Transaction.d.ts +8 -0
- package/dist/Transaction.d.ts.map +1 -1
- package/dist/Transaction.js +72 -22
- package/dist/Transaction.js.map +1 -1
- package/dist/VectorSearchEmulation.d.ts +3 -2
- package/dist/VectorSearchEmulation.d.ts.map +1 -1
- package/dist/VectorSearchEmulation.js +14 -2
- package/dist/VectorSearchEmulation.js.map +1 -1
- package/dist/compression/zlib.d.ts +75 -0
- package/dist/compression/zlib.d.ts.map +1 -0
- package/dist/compression/zlib.js +109 -0
- package/dist/compression/zlib.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/BoundCrud.d.ts +39 -35
- package/dist/internal/BoundCrud.d.ts.map +1 -1
- package/dist/internal/BoundCrud.js.map +1 -1
- package/dist/internal/BoundQuery.d.ts +6 -5
- package/dist/internal/BoundQuery.d.ts.map +1 -1
- package/dist/internal/BoundQuery.js.map +1 -1
- package/dist/internal/BoundVectorQuery.d.ts +17 -1
- package/dist/internal/BoundVectorQuery.d.ts.map +1 -1
- package/dist/internal/BoundVectorQuery.js +31 -6
- package/dist/internal/BoundVectorQuery.js.map +1 -1
- package/dist/internal/EntityCombinators.d.ts +8 -5
- package/dist/internal/EntityCombinators.d.ts.map +1 -1
- package/dist/internal/EntityCombinators.js +24 -6
- package/dist/internal/EntityCombinators.js.map +1 -1
- package/dist/internal/EntityOps.d.ts +1 -1
- package/dist/internal/Expr.d.ts +9 -3
- package/dist/internal/Expr.d.ts.map +1 -1
- package/dist/internal/Expr.js +7 -5
- package/dist/internal/Expr.js.map +1 -1
- package/dist/internal/ExpressionLimits.d.ts +45 -0
- package/dist/internal/ExpressionLimits.d.ts.map +1 -0
- package/dist/internal/ExpressionLimits.js +89 -0
- package/dist/internal/ExpressionLimits.js.map +1 -0
- package/dist/internal/Hydrate.d.ts +62 -0
- package/dist/internal/Hydrate.d.ts.map +1 -0
- package/dist/internal/Hydrate.js +191 -0
- package/dist/internal/Hydrate.js.map +1 -0
- package/dist/internal/ItemSize.d.ts +60 -24
- package/dist/internal/ItemSize.d.ts.map +1 -1
- package/dist/internal/ItemSize.js +122 -39
- package/dist/internal/ItemSize.js.map +1 -1
- package/dist/internal/Packed.d.ts +289 -0
- package/dist/internal/Packed.d.ts.map +1 -0
- package/dist/internal/Packed.js +654 -0
- package/dist/internal/Packed.js.map +1 -0
- package/dist/internal/PathBuilder.d.ts +45 -2
- package/dist/internal/PathBuilder.d.ts.map +1 -1
- package/dist/internal/PathBuilder.js +4 -0
- package/dist/internal/PathBuilder.js.map +1 -1
- package/dist/internal/TransactWriteOps.d.ts +22 -46
- package/dist/internal/TransactWriteOps.d.ts.map +1 -1
- package/dist/internal/TransactWriteOps.js +26 -95
- package/dist/internal/TransactWriteOps.js.map +1 -1
- package/dist/internal/TransactableOps.d.ts +1 -1
- package/dist/internal/TransactableOps.d.ts.map +1 -1
- package/dist/internal/TransactableOps.js +2 -0
- package/dist/internal/TransactableOps.js.map +1 -1
- package/dist/internal/WriteDiagnosis.d.ts +353 -0
- package/dist/internal/WriteDiagnosis.d.ts.map +1 -0
- package/dist/internal/WriteDiagnosis.js +1028 -0
- package/dist/internal/WriteDiagnosis.js.map +1 -0
- package/dist/internal/sparse_check.js +43 -79
- package/dist/internal/sparse_check.js.map +1 -1
- package/package.json +6 -2
package/dist/Table.d.ts
CHANGED
|
@@ -105,6 +105,12 @@ export interface Table<TEntities extends Record<string, EntityLike> = Record<str
|
|
|
105
105
|
*
|
|
106
106
|
* Entities are automatically configured with the table's schema and tag.
|
|
107
107
|
*
|
|
108
|
+
* Members are checked against each other at definition time: entities sharing a
|
|
109
|
+
* physical vector index must agree on its settings (EDD-9035), every member
|
|
110
|
+
* declaring one physical secondary index must agree on its key attributes and
|
|
111
|
+
* GSI/LSI classification, and every entity must declare the same primary-key
|
|
112
|
+
* fields (EDD-9069).
|
|
113
|
+
*
|
|
108
114
|
* @example
|
|
109
115
|
* ```typescript
|
|
110
116
|
* const MainTable = Table.make({
|
|
@@ -130,13 +136,12 @@ export declare const make: <const TEntities extends Record<string, EntityLike> =
|
|
|
130
136
|
* by physical index name, validating that all sharers agree.
|
|
131
137
|
*
|
|
132
138
|
* Sharing a physical vector index across entities is the norm in single-table
|
|
133
|
-
* designs — the quota is 5 per table — and it is safe precisely because the
|
|
139
|
+
* designs — the default quota is 5 per table — and it is safe precisely because the
|
|
134
140
|
* composed `__edd_vp_<name>__` partition value carries the entity type, so a
|
|
135
141
|
* search never crosses entity boundaries (see `DESIGN.md §14`).
|
|
136
142
|
*
|
|
137
143
|
* @throws when two entities disagree on `dimensions` or `distance` (EDD-9035),
|
|
138
|
-
* or
|
|
139
|
-
* indexes are declared (EDD-9034).
|
|
144
|
+
* or on a shared filter attribute's type (EDD-9040).
|
|
140
145
|
*/
|
|
141
146
|
export declare const mergeVectorIndexes: (entities: Record<string, EntityLike>) => Map<string, MergedVectorIndex>;
|
|
142
147
|
/** A physical vector index resolved across every entity that declares it. */
|
|
@@ -145,6 +150,8 @@ export interface MergedVectorIndex {
|
|
|
145
150
|
readonly definition: VectorIndexDefinition;
|
|
146
151
|
/** Entity type of the first declarer, used in conflict messages. */
|
|
147
152
|
readonly owner: string;
|
|
153
|
+
/** Entity type of every entity declaring the index, in registration order. */
|
|
154
|
+
readonly sharers: ReadonlyArray<string>;
|
|
148
155
|
/** Union of every sharer's declared `filters` (domain names). */
|
|
149
156
|
readonly filters: ReadonlyArray<string>;
|
|
150
157
|
/** Stored-name resolver for the first declarer's `storedAs` renames. */
|
|
@@ -235,18 +242,57 @@ export interface TableDefinition {
|
|
|
235
242
|
readonly VectorIndexes?: Array<VectorIndexSpec> | undefined;
|
|
236
243
|
}
|
|
237
244
|
/**
|
|
238
|
-
* Resolve the table's primary PK/SK field names from the
|
|
239
|
-
*
|
|
240
|
-
*
|
|
245
|
+
* Resolve the table's primary PK/SK field names from the entities' primary
|
|
246
|
+
* indexes. Aggregates are skipped — they borrow the table's primary key rather
|
|
247
|
+
* than declaring one.
|
|
241
248
|
*
|
|
242
249
|
* Returns `undefined` when no entity declares a primary index (a table registering
|
|
243
250
|
* only aggregates). Callers that require the primary key must treat that as an error;
|
|
244
251
|
* callers performing best-effort validation should skip their check instead.
|
|
252
|
+
*
|
|
253
|
+
* @throws when two entities declare different primary-key fields (EDD-9069). A
|
|
254
|
+
* table has one key schema; an entity keyed by other attributes would write
|
|
255
|
+
* items lacking the table's key attributes.
|
|
245
256
|
*/
|
|
246
257
|
export declare const resolvePrimaryKey: (entities: Record<string, EntityLike>) => {
|
|
247
258
|
readonly pk: string;
|
|
248
259
|
readonly sk: string | undefined;
|
|
249
260
|
} | undefined;
|
|
261
|
+
/** A physical secondary index resolved across every member that declares it. */
|
|
262
|
+
export interface MergedSecondaryIndex {
|
|
263
|
+
/**
|
|
264
|
+
* `"gsi"` or `"lsi"`; `undefined` only for an aggregate collection index on a
|
|
265
|
+
* table with no entity primary key, where the classification is unknown.
|
|
266
|
+
*/
|
|
267
|
+
readonly kind: "gsi" | "lsi" | undefined;
|
|
268
|
+
readonly pk: string;
|
|
269
|
+
readonly sk: string;
|
|
270
|
+
/** The first declarer, as named in conflict messages. */
|
|
271
|
+
readonly owner: string;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Merge every member's secondary index declarations into one map keyed by
|
|
275
|
+
* physical index name, refusing members that disagree on its key schema.
|
|
276
|
+
*
|
|
277
|
+
* Declarers:
|
|
278
|
+
* - every non-primary entity index (the auto-generated `_cascade_<field>`
|
|
279
|
+
* indexes included) — always a GSI;
|
|
280
|
+
* - an aggregate's `collection.index` — an LSI when the aggregate's `pkField` is
|
|
281
|
+
* the table's primary partition key, a GSI otherwise (unknown when `primary`
|
|
282
|
+
* is `undefined`);
|
|
283
|
+
* - an aggregate's list index — always a GSI.
|
|
284
|
+
*
|
|
285
|
+
* Several members sharing one physical index is the norm in single-table
|
|
286
|
+
* designs (index overloading). They must agree on its key attributes and its
|
|
287
|
+
* GSI/LSI classification: DynamoDB keys a physical index one way, and a member
|
|
288
|
+
* writing other attributes would never appear in it.
|
|
289
|
+
*
|
|
290
|
+
* @throws on a disagreement (EDD-9069), naming both declarers and both shapes.
|
|
291
|
+
*/
|
|
292
|
+
export declare const mergeSecondaryIndexes: (entities: Record<string, EntityLike>, aggregates: Record<string, AggregateLike>, primary: {
|
|
293
|
+
readonly pk: string;
|
|
294
|
+
readonly sk: string | undefined;
|
|
295
|
+
} | undefined) => Map<string, MergedSecondaryIndex>;
|
|
250
296
|
/**
|
|
251
297
|
* Derive CreateTable input from a table's registered members.
|
|
252
298
|
*
|
|
@@ -266,6 +312,10 @@ export declare const resolvePrimaryKey: (entities: Record<string, EntityLike>) =
|
|
|
266
312
|
* entity's primary index). This matches DynamoDB semantics — any index that shares
|
|
267
313
|
* the base table's partition key IS an LSI — and makes `lsi1`..`lsi5`-style indexes
|
|
268
314
|
* on aggregates work transparently with `db.tables.*.create()`.
|
|
315
|
+
*
|
|
316
|
+
* @throws when members disagree on one physical secondary index's key attributes or
|
|
317
|
+
* GSI/LSI classification, or entities disagree on the primary-key fields (EDD-9069,
|
|
318
|
+
* see {@link mergeSecondaryIndexes}). {@link make} refuses the same tables.
|
|
269
319
|
*/
|
|
270
320
|
export declare const definition: (table: Table) => TableDefinition;
|
|
271
321
|
/** Options for table creation. */
|
package/dist/Table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,KAAK,YAAY,MAAM,yCAAyC,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAA;
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"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"}
|
package/dist/Table.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* Use `DynamoClient.make()` to get a typed client with bound entity operations.
|
|
9
9
|
*/
|
|
10
|
-
import {
|
|
10
|
+
import { toWireDistanceFunction } from "@effect-dynamodb/schema/VectorIndex.js";
|
|
11
11
|
import { Context, Effect, Layer } from "effect";
|
|
12
12
|
/** Default attribute name used for DynamoDB TTL when {@link TableConfig.ttlAttributeName} is unset. */
|
|
13
13
|
export const DEFAULT_TTL_ATTRIBUTE_NAME = "_ttl";
|
|
@@ -26,6 +26,12 @@ let tableCounter = 0;
|
|
|
26
26
|
*
|
|
27
27
|
* Entities are automatically configured with the table's schema and tag.
|
|
28
28
|
*
|
|
29
|
+
* Members are checked against each other at definition time: entities sharing a
|
|
30
|
+
* physical vector index must agree on its settings (EDD-9035), every member
|
|
31
|
+
* declaring one physical secondary index must agree on its key attributes and
|
|
32
|
+
* GSI/LSI classification, and every entity must declare the same primary-key
|
|
33
|
+
* fields (EDD-9069).
|
|
34
|
+
*
|
|
29
35
|
* @example
|
|
30
36
|
* ```typescript
|
|
31
37
|
* const MainTable = Table.make({
|
|
@@ -46,17 +52,24 @@ export const make = (config) => {
|
|
|
46
52
|
const Tag = Context.Service(`@effect-dynamodb/Table/${config.schema.name}/${id}`);
|
|
47
53
|
const entities = (config.entities ?? {});
|
|
48
54
|
const aggregates = (config.aggregates ?? {});
|
|
49
|
-
// Configure all entities with this table's schema and tag
|
|
50
|
-
for (const entity of Object.values(entities)) {
|
|
51
|
-
if (typeof entity._configure === "function") {
|
|
52
|
-
entity._configure(config.schema, Tag);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
55
|
// Cross-entity vector index agreement. `Dimensions` and `DistanceFunction` are
|
|
56
56
|
// immutable at the DynamoDB level, so two entities sharing a physical vector
|
|
57
57
|
// index cannot disagree — catch it at definition time rather than on the
|
|
58
58
|
// CreateTable round trip.
|
|
59
59
|
validateSharedVectorIndexes(entities);
|
|
60
|
+
// One physical secondary index has one key schema, and every entity on one
|
|
61
|
+
// table shares its primary key. Refuse members that disagree (EDD-9069) here,
|
|
62
|
+
// so tables deployed with CDK or Terraform — which never call
|
|
63
|
+
// `Table.definition` — fail at definition time too.
|
|
64
|
+
mergeSecondaryIndexes(entities, aggregates, resolvePrimaryKey(entities));
|
|
65
|
+
// Configure all entities with this table's schema and tag — only once the
|
|
66
|
+
// table is valid, so a rejected `Table.make` leaves its members bound to
|
|
67
|
+
// whatever table they were registered on before.
|
|
68
|
+
for (const entity of Object.values(entities)) {
|
|
69
|
+
if (typeof entity._configure === "function") {
|
|
70
|
+
entity._configure(config.schema, Tag);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
60
73
|
return {
|
|
61
74
|
_tag: "Table",
|
|
62
75
|
schema: config.schema,
|
|
@@ -84,13 +97,12 @@ export const make = (config) => {
|
|
|
84
97
|
* by physical index name, validating that all sharers agree.
|
|
85
98
|
*
|
|
86
99
|
* Sharing a physical vector index across entities is the norm in single-table
|
|
87
|
-
* designs — the quota is 5 per table — and it is safe precisely because the
|
|
100
|
+
* designs — the default quota is 5 per table — and it is safe precisely because the
|
|
88
101
|
* composed `__edd_vp_<name>__` partition value carries the entity type, so a
|
|
89
102
|
* search never crosses entity boundaries (see `DESIGN.md §14`).
|
|
90
103
|
*
|
|
91
104
|
* @throws when two entities disagree on `dimensions` or `distance` (EDD-9035),
|
|
92
|
-
* or
|
|
93
|
-
* indexes are declared (EDD-9034).
|
|
105
|
+
* or on a shared filter attribute's type (EDD-9040).
|
|
94
106
|
*/
|
|
95
107
|
export const mergeVectorIndexes = (entities) => {
|
|
96
108
|
const merged = new Map();
|
|
@@ -106,6 +118,7 @@ export const mergeVectorIndexes = (entities) => {
|
|
|
106
118
|
merged.set(definition.index, {
|
|
107
119
|
definition,
|
|
108
120
|
owner,
|
|
121
|
+
sharers: [owner],
|
|
109
122
|
filters: [...definition.filters],
|
|
110
123
|
resolveDbName,
|
|
111
124
|
filterStoredTypes: Object.fromEntries(definition.filters.map((f) => [resolveDbName(f), definition.filterTypes[f] ?? "S"])),
|
|
@@ -120,6 +133,8 @@ export const mergeVectorIndexes = (entities) => {
|
|
|
120
133
|
`${definition.dimensions}/${definition.distance}. Dimensions and distance function are ` +
|
|
121
134
|
`immutable on a DynamoDB vector index — every entity sharing one must agree.`);
|
|
122
135
|
}
|
|
136
|
+
if (!existing.sharers.includes(owner))
|
|
137
|
+
existing.sharers.push(owner);
|
|
123
138
|
// Filters, unlike dimensions/distance, are per-entity access patterns
|
|
124
139
|
// rather than a shared physical property — one index can serve several
|
|
125
140
|
// entities filtering on different attributes. Union them; keeping only
|
|
@@ -142,19 +157,10 @@ export const mergeVectorIndexes = (entities) => {
|
|
|
142
157
|
}
|
|
143
158
|
}
|
|
144
159
|
}
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
`(${[...entry.filters].sort().join(", ")}). DynamoDB allows at most ` +
|
|
150
|
-
`${MAX_INLINE_FILTERS} per vector index.`);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
if (merged.size > MAX_VECTOR_INDEXES_PER_TABLE) {
|
|
154
|
-
throw new Error(`[EDD-9034] Table declares ${merged.size} vector indexes ` +
|
|
155
|
-
`(${[...merged.keys()].sort().join(", ")}). DynamoDB allows at most ` +
|
|
156
|
-
`${MAX_VECTOR_INDEXES_PER_TABLE} per table.`);
|
|
157
|
-
}
|
|
160
|
+
// DynamoDB's own vector-index limits — inline filters per index (after the
|
|
161
|
+
// union above), vector indexes per table (an adjustable quota) — are not
|
|
162
|
+
// pre-checked: `db.tables.*.create()` / `addVectorIndex` diagnose DynamoDB's
|
|
163
|
+
// rejection, naming the index and the entities sharing it (#144).
|
|
158
164
|
return merged;
|
|
159
165
|
};
|
|
160
166
|
/** @internal Run {@link mergeVectorIndexes} purely for its validation effect. */
|
|
@@ -193,22 +199,114 @@ export const toVectorIndexSpec = (definition, options) => {
|
|
|
193
199
|
};
|
|
194
200
|
};
|
|
195
201
|
/**
|
|
196
|
-
* Resolve the table's primary PK/SK field names from the
|
|
197
|
-
*
|
|
198
|
-
*
|
|
202
|
+
* Resolve the table's primary PK/SK field names from the entities' primary
|
|
203
|
+
* indexes. Aggregates are skipped — they borrow the table's primary key rather
|
|
204
|
+
* than declaring one.
|
|
199
205
|
*
|
|
200
206
|
* Returns `undefined` when no entity declares a primary index (a table registering
|
|
201
207
|
* only aggregates). Callers that require the primary key must treat that as an error;
|
|
202
208
|
* callers performing best-effort validation should skip their check instead.
|
|
209
|
+
*
|
|
210
|
+
* @throws when two entities declare different primary-key fields (EDD-9069). A
|
|
211
|
+
* table has one key schema; an entity keyed by other attributes would write
|
|
212
|
+
* items lacking the table's key attributes.
|
|
203
213
|
*/
|
|
204
214
|
export const resolvePrimaryKey = (entities) => {
|
|
205
|
-
|
|
215
|
+
let resolved;
|
|
216
|
+
let owner = "";
|
|
217
|
+
for (const [entityKey, entity] of Object.entries(entities)) {
|
|
206
218
|
const primary = entity.indexes.primary;
|
|
207
|
-
if (primary)
|
|
208
|
-
|
|
219
|
+
if (!primary)
|
|
220
|
+
continue;
|
|
221
|
+
const current = { pk: primary.pk.field, sk: primary.sk.field };
|
|
222
|
+
const name = entity.entityType ?? entityKey;
|
|
223
|
+
if (resolved === undefined) {
|
|
224
|
+
resolved = current;
|
|
225
|
+
owner = name;
|
|
226
|
+
continue;
|
|
227
|
+
}
|
|
228
|
+
if (resolved.pk !== current.pk || resolved.sk !== current.sk) {
|
|
229
|
+
throw new Error(`[EDD-9069] The table's primary key is declared as (${keyList(resolved)}) by entity ` +
|
|
230
|
+
`"${owner}" and as (${keyList(current)}) by entity "${name}". One table has one key ` +
|
|
231
|
+
`schema: every entity registered on it must declare the same primary-key fields.`);
|
|
209
232
|
}
|
|
210
233
|
}
|
|
211
|
-
return
|
|
234
|
+
return resolved;
|
|
235
|
+
};
|
|
236
|
+
const keyList = (keys) => keys.sk === undefined ? keys.pk : `${keys.pk}, ${keys.sk}`;
|
|
237
|
+
const describeIndexKind = (kind) => kind === "gsi" ? "a GSI" : kind === "lsi" ? "an LSI" : "an index";
|
|
238
|
+
/**
|
|
239
|
+
* Merge every member's secondary index declarations into one map keyed by
|
|
240
|
+
* physical index name, refusing members that disagree on its key schema.
|
|
241
|
+
*
|
|
242
|
+
* Declarers:
|
|
243
|
+
* - every non-primary entity index (the auto-generated `_cascade_<field>`
|
|
244
|
+
* indexes included) — always a GSI;
|
|
245
|
+
* - an aggregate's `collection.index` — an LSI when the aggregate's `pkField` is
|
|
246
|
+
* the table's primary partition key, a GSI otherwise (unknown when `primary`
|
|
247
|
+
* is `undefined`);
|
|
248
|
+
* - an aggregate's list index — always a GSI.
|
|
249
|
+
*
|
|
250
|
+
* Several members sharing one physical index is the norm in single-table
|
|
251
|
+
* designs (index overloading). They must agree on its key attributes and its
|
|
252
|
+
* GSI/LSI classification: DynamoDB keys a physical index one way, and a member
|
|
253
|
+
* writing other attributes would never appear in it.
|
|
254
|
+
*
|
|
255
|
+
* @throws on a disagreement (EDD-9069), naming both declarers and both shapes.
|
|
256
|
+
*/
|
|
257
|
+
export const mergeSecondaryIndexes = (entities, aggregates, primary) => {
|
|
258
|
+
const merged = new Map();
|
|
259
|
+
const declare = (indexName, declared) => {
|
|
260
|
+
const existing = merged.get(indexName);
|
|
261
|
+
if (existing === undefined) {
|
|
262
|
+
merged.set(indexName, declared);
|
|
263
|
+
return;
|
|
264
|
+
}
|
|
265
|
+
const kindsDisagree = existing.kind !== undefined && declared.kind !== undefined && existing.kind !== declared.kind;
|
|
266
|
+
if (existing.pk !== declared.pk || existing.sk !== declared.sk || kindsDisagree) {
|
|
267
|
+
throw new Error(`[EDD-9069] Secondary index "${indexName}" is declared as ` +
|
|
268
|
+
`${describeIndexKind(existing.kind)} keyed (${existing.pk}, ${existing.sk}) by ` +
|
|
269
|
+
`${existing.owner} and as ${describeIndexKind(declared.kind)} keyed ` +
|
|
270
|
+
`(${declared.pk}, ${declared.sk}) by ${declared.owner}. One physical index has one ` +
|
|
271
|
+
`key schema: every member declaring it must agree.`);
|
|
272
|
+
}
|
|
273
|
+
// A declarer whose classification was unknown takes the known one.
|
|
274
|
+
if (existing.kind === undefined && declared.kind !== undefined) {
|
|
275
|
+
merged.set(indexName, { ...existing, kind: declared.kind });
|
|
276
|
+
}
|
|
277
|
+
};
|
|
278
|
+
for (const [entityKey, entity] of Object.entries(entities)) {
|
|
279
|
+
const owner = `entity "${entity.entityType ?? entityKey}"`;
|
|
280
|
+
for (const [name, index] of Object.entries(entity.indexes)) {
|
|
281
|
+
if (!index || name === "primary" || !index.index)
|
|
282
|
+
continue;
|
|
283
|
+
// Entity index definitions carry no LSI semantics: always a GSI.
|
|
284
|
+
declare(index.index, { kind: "gsi", pk: index.pk.field, sk: index.sk.field, owner });
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
for (const [aggregateKey, agg] of Object.entries(aggregates)) {
|
|
288
|
+
const collectionIndex = agg.collection.index;
|
|
289
|
+
const collectionSk = agg.collection.sk;
|
|
290
|
+
if (collectionIndex !== undefined && collectionSk !== undefined) {
|
|
291
|
+
declare(collectionIndex, {
|
|
292
|
+
// DynamoDB LSIs share the base table's partition key; any index that
|
|
293
|
+
// does IS an LSI.
|
|
294
|
+
kind: primary === undefined ? undefined : agg.pkField === primary.pk ? "lsi" : "gsi",
|
|
295
|
+
pk: agg.pkField,
|
|
296
|
+
sk: collectionSk.field,
|
|
297
|
+
owner: `aggregate "${aggregateKey}" (collection index)`,
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
if (agg.listIndex) {
|
|
301
|
+
declare(agg.listIndex.index, {
|
|
302
|
+
kind: "gsi",
|
|
303
|
+
pk: agg.listIndex.pk.field,
|
|
304
|
+
sk: agg.listIndex.sk.field,
|
|
305
|
+
owner: `aggregate "${aggregateKey}" (list index)`,
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
return merged;
|
|
212
310
|
};
|
|
213
311
|
/**
|
|
214
312
|
* Derive CreateTable input from a table's registered members.
|
|
@@ -229,6 +327,10 @@ export const resolvePrimaryKey = (entities) => {
|
|
|
229
327
|
* entity's primary index). This matches DynamoDB semantics — any index that shares
|
|
230
328
|
* the base table's partition key IS an LSI — and makes `lsi1`..`lsi5`-style indexes
|
|
231
329
|
* on aggregates work transparently with `db.tables.*.create()`.
|
|
330
|
+
*
|
|
331
|
+
* @throws when members disagree on one physical secondary index's key attributes or
|
|
332
|
+
* GSI/LSI classification, or entities disagree on the primary-key fields (EDD-9069,
|
|
333
|
+
* see {@link mergeSecondaryIndexes}). {@link make} refuses the same tables.
|
|
232
334
|
*/
|
|
233
335
|
export const definition = (table) => {
|
|
234
336
|
const members = [
|
|
@@ -246,10 +348,17 @@ export const definition = (table) => {
|
|
|
246
348
|
}
|
|
247
349
|
const primaryPk = primary.pk;
|
|
248
350
|
const primarySk = primary.sk;
|
|
249
|
-
// Pass 2:
|
|
250
|
-
|
|
351
|
+
// Pass 2: classify secondary indexes (GSI vs LSI), refusing members that
|
|
352
|
+
// disagree on one physical index's key schema (EDD-9069).
|
|
353
|
+
const secondaryIndexes = mergeSecondaryIndexes(table.entities, table.aggregates, primary);
|
|
251
354
|
const gsiMap = new Map();
|
|
252
355
|
const lsiMap = new Map();
|
|
356
|
+
for (const [indexName, index] of secondaryIndexes) {
|
|
357
|
+
const target = index.kind === "lsi" ? lsiMap : gsiMap;
|
|
358
|
+
target.set(indexName, { pk: index.pk, sk: index.sk });
|
|
359
|
+
}
|
|
360
|
+
// Pass 3: collect attribute names.
|
|
361
|
+
const attributeNames = new Set();
|
|
253
362
|
// Always include the primary key fields in attribute definitions.
|
|
254
363
|
attributeNames.add(primaryPk);
|
|
255
364
|
if (primarySk !== undefined && primarySk !== primaryPk) {
|
|
@@ -273,48 +382,21 @@ export const definition = (table) => {
|
|
|
273
382
|
attributeNames.add(agg.pkField);
|
|
274
383
|
if (collectionIndex !== undefined && collectionSk !== undefined) {
|
|
275
384
|
attributeNames.add(collectionSk.field);
|
|
276
|
-
if (agg.pkField === primaryPk) {
|
|
277
|
-
if (!lsiMap.has(collectionIndex) && !gsiMap.has(collectionIndex)) {
|
|
278
|
-
lsiMap.set(collectionIndex, { pk: agg.pkField, sk: collectionSk.field });
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
else {
|
|
282
|
-
if (!gsiMap.has(collectionIndex) && !lsiMap.has(collectionIndex)) {
|
|
283
|
-
gsiMap.set(collectionIndex, { pk: agg.pkField, sk: collectionSk.field });
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
385
|
}
|
|
287
386
|
// List GSI (if configured) — always a GSI; has its own PK attribute.
|
|
288
387
|
if (agg.listIndex) {
|
|
289
388
|
attributeNames.add(agg.listIndex.pk.field);
|
|
290
389
|
attributeNames.add(agg.listIndex.sk.field);
|
|
291
|
-
if (!gsiMap.has(agg.listIndex.index) && !lsiMap.has(agg.listIndex.index)) {
|
|
292
|
-
gsiMap.set(agg.listIndex.index, {
|
|
293
|
-
pk: agg.listIndex.pk.field,
|
|
294
|
-
sk: agg.listIndex.sk.field,
|
|
295
|
-
});
|
|
296
|
-
}
|
|
297
390
|
}
|
|
298
391
|
}
|
|
299
392
|
else {
|
|
300
393
|
// Entity — scan index definitions
|
|
301
394
|
const entity = member;
|
|
302
|
-
for (const
|
|
395
|
+
for (const index of Object.values(entity.indexes)) {
|
|
303
396
|
if (!index)
|
|
304
397
|
continue;
|
|
305
398
|
attributeNames.add(index.pk.field);
|
|
306
399
|
attributeNames.add(index.sk.field);
|
|
307
|
-
if (indexName === "primary") {
|
|
308
|
-
// Primary key already captured in pass 1.
|
|
309
|
-
continue;
|
|
310
|
-
}
|
|
311
|
-
if (index.index) {
|
|
312
|
-
// Entity-declared secondary index — always a GSI. Entity index definitions
|
|
313
|
-
// don't carry LSI semantics; LSIs are only introduced via aggregate collections.
|
|
314
|
-
if (!gsiMap.has(index.index) && !lsiMap.has(index.index)) {
|
|
315
|
-
gsiMap.set(index.index, { pk: index.pk.field, sk: index.sk.field });
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
400
|
}
|
|
319
401
|
}
|
|
320
402
|
}
|
package/dist/Table.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.ts"],"names":[],"mappings":"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"}
|
package/dist/Transaction.d.ts
CHANGED
|
@@ -73,6 +73,14 @@ export declare const transactGet: <const T extends ReadonlyArray<AnyGet>>(items:
|
|
|
73
73
|
* `ConcurrentModification`. A caller's own condition failing is
|
|
74
74
|
* `TransactionCancelled`; a taken unique value is `UniqueConstraintViolation`.
|
|
75
75
|
*
|
|
76
|
+
* DynamoDB's rules are not pre-checked (#144): a transaction breaking one is
|
|
77
|
+
* sent, rejected whole, and reported naming the culprit — over 100 items
|
|
78
|
+
* (counted after expansion) as `DynamoError`; two ops touching one item, an
|
|
79
|
+
* oversized item, a payload over 4 MB, a sort key over 1024 bytes or a
|
|
80
|
+
* condition over DynamoDB's expression limits as `ValidationError` — with
|
|
81
|
+
* DynamoDB's error as the cause. Nothing is written, and a repeated item is
|
|
82
|
+
* never retried as a lost race.
|
|
83
|
+
*
|
|
76
84
|
* ```typescript
|
|
77
85
|
* yield* Transaction.transactWrite([
|
|
78
86
|
* Users.put({ userId: "u-1", ... }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../src/Transaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,KAAK,sBAAsB,EAG3B,KAAK,mBAAmB,
|
|
1
|
+
{"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../src/Transaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,KAAK,sBAAsB,EAG3B,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,eAAe,EAChB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAkB,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAGxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAOjE,OAAO,EAEL,KAAK,gBAAgB,EACrB,oBAAoB,EAGpB,KAAK,eAAe,EACrB,MAAM,gCAAgC,CAAA;AASvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAS7C,OAAO,EAAE,oBAAoB,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,CAAA;AAE5E;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,KAAK,EAAE;IAClB,CAAC,SAAS,EAAE,gBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,gBAAgB,CAAA;IACjE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,GAAG,gBAAgB,CAAA;CAqB7D,CAAA;AAMF;;;GAGG;AACH,KAAK,iBAAiB,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,IAAI;IACxD,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;CACvD,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,EAC/D,OAAO,CAAC,KACP,MAAM,CAAC,MAAM,CACd,iBAAiB,CAAC,CAAC,CAAC,EACpB,iBAAiB,GAAG,eAAe,GAAG,oBAAoB,EAC1D,YAAY,GAAG,WAAW,CA+GxB,CAAA;AAMJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,aAAa,GACxB,YAAY,aAAa,CAAC,eAAe,CAAC,KACzC,MAAM,CAAC,MAAM,CACd,IAAI,EACF,iBAAiB,GACjB,eAAe,GACf,oBAAoB,GACpB,yBAAyB,GACzB,mBAAmB,GACnB,sBAAsB,EACxB,YAAY,GAAG,WAAW,CAyExB,CAAA"}
|