@spine-event-engine/storage-datastore 2.0.0-snapshot.22 → 2.0.0-snapshot.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.
- package/README.md +8 -2
- package/REFERENCE.md +55 -11
- package/dist/datastore/agent-execution.d.ts +337 -0
- package/dist/datastore/agent-execution.d.ts.map +1 -0
- package/dist/datastore/agent-execution.js +789 -0
- package/dist/datastore/agent-execution.js.map +1 -0
- package/dist/datastore/agent-history.d.ts +108 -0
- package/dist/datastore/agent-history.d.ts.map +1 -0
- package/dist/datastore/agent-history.js +219 -0
- package/dist/datastore/agent-history.js.map +1 -0
- package/dist/datastore/entity-history.d.ts +22 -65
- package/dist/datastore/entity-history.d.ts.map +1 -1
- package/dist/datastore/entity-history.js +83 -247
- package/dist/datastore/entity-history.js.map +1 -1
- package/dist/datastore/record-storage.d.ts +24 -0
- package/dist/datastore/record-storage.d.ts.map +1 -1
- package/dist/datastore/record-storage.js +46 -7
- package/dist/datastore/record-storage.js.map +1 -1
- package/dist/datastore/storage-factory.d.ts +110 -6
- package/dist/datastore/storage-factory.d.ts.map +1 -1
- package/dist/datastore/storage-factory.js +261 -8
- package/dist/datastore/storage-factory.js.map +1 -1
- package/dist/datastore/tenant-catalog.d.ts +9 -1
- package/dist/datastore/tenant-catalog.d.ts.map +1 -1
- package/dist/datastore/tenant-catalog.js +225 -1
- package/dist/datastore/tenant-catalog.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/index.yaml +24 -1
- package/package.json +5 -5
- package/dist/datastore/delivery-cleanup.d.ts +0 -31
- package/dist/datastore/delivery-cleanup.d.ts.map +0 -1
- package/dist/datastore/delivery-cleanup.js +0 -111
- package/dist/datastore/delivery-cleanup.js.map +0 -1
|
@@ -16,10 +16,9 @@ import {} from "@bufbuild/protobuf/wkt";
|
|
|
16
16
|
import { EventSchema } from "@spine-event-engine/proto";
|
|
17
17
|
import { EntityRecordSchema, } from "@spine-event-engine/proto/generated/spine/server/entity/entity_pb.js";
|
|
18
18
|
import { eventStoreRecordSpec } from "@spine-event-engine/storage/provider";
|
|
19
|
-
import { disabledEventHistoryPort, disabledStateHistoryPort, eventHistorySpec, stateHistorySpec, } from "@spine-event-engine/storage/provider";
|
|
19
|
+
import { disabledEventHistoryPort, disabledStateHistoryPort, eventHistorySpec, stateHistorySpec, EntityCommitSnapshots, } from "@spine-event-engine/storage/provider";
|
|
20
20
|
import { RecordSpec } from "@spine-event-engine/storage";
|
|
21
21
|
import { TenantBoundary } from "@spine-event-engine/storage/provider";
|
|
22
|
-
import { Datastore } from "@google-cloud/datastore";
|
|
23
22
|
import { DatastoreRecordStorage } from "./record-storage.js";
|
|
24
23
|
/**
|
|
25
24
|
* Groups Entity current and optional history record families.
|
|
@@ -84,177 +83,107 @@ export class DatastoreEntityStorage {
|
|
|
84
83
|
}
|
|
85
84
|
}
|
|
86
85
|
/**
|
|
87
|
-
*
|
|
86
|
+
* Writes one Datastore Entity mutation in independent record order.
|
|
88
87
|
*/
|
|
89
88
|
export class DatastoreEntityCommitStorage {
|
|
90
89
|
input;
|
|
91
90
|
openRecords;
|
|
92
91
|
#open = true;
|
|
93
92
|
/**
|
|
94
|
-
* Creates
|
|
93
|
+
* Creates commit storage for one Entity persistence contract.
|
|
95
94
|
*
|
|
96
|
-
* @param input
|
|
97
|
-
* @param openRecords
|
|
95
|
+
* @param input Defines the Entity source and tenant boundary.
|
|
96
|
+
* @param openRecords Opens each generated record family.
|
|
98
97
|
*/
|
|
99
98
|
constructor(input, openRecords) {
|
|
100
99
|
this.input = input;
|
|
101
100
|
this.openRecords = openRecords;
|
|
102
101
|
}
|
|
103
102
|
/**
|
|
104
|
-
*
|
|
103
|
+
* Writes histories and delivery Events before the current Entity record.
|
|
104
|
+
*
|
|
105
|
+
* A failed save may leave a completed prefix. One transient retry replays
|
|
106
|
+
* captured records with the same versions and Event IDs.
|
|
105
107
|
*
|
|
106
108
|
* @typeParam I Entity identifier type.
|
|
107
109
|
* @typeParam S Entity state message type.
|
|
108
|
-
* @param input
|
|
109
|
-
* @returns Completion after
|
|
110
|
+
* @param input Supplies the prepared Entity mutation.
|
|
111
|
+
* @returns Completion after every requested record write.
|
|
110
112
|
*/
|
|
111
113
|
async commit(input) {
|
|
112
114
|
this.validate(input);
|
|
113
|
-
const
|
|
114
|
-
const
|
|
115
|
-
const
|
|
116
|
-
const
|
|
115
|
+
const prepared = EntityCommitSnapshots.capture(input);
|
|
116
|
+
const current = this.openRecords(prepared.entity.recordSpec);
|
|
117
|
+
const stateLayout = stateHistorySpec(prepared.entity.stateSchema);
|
|
118
|
+
const diagnosticLayout = eventHistorySpec(prepared.entity.stateSchema);
|
|
119
|
+
const states = prepared.states?.length
|
|
117
120
|
? this.openRecords(stateLayout.spec, stateLayout.group)
|
|
118
121
|
: undefined;
|
|
119
|
-
const diagnostics =
|
|
122
|
+
const diagnostics = prepared.diagnostics?.length
|
|
120
123
|
? this.openRecords(diagnosticLayout.spec, diagnosticLayout.group)
|
|
121
124
|
: undefined;
|
|
122
|
-
const events = this.openRecords(eventStoreRecordSpec);
|
|
125
|
+
const events = prepared.events?.length ? this.openRecords(eventStoreRecordSpec) : undefined;
|
|
123
126
|
try {
|
|
124
|
-
await this.run(input, current, states, diagnostics, events);
|
|
125
|
-
}
|
|
126
|
-
finally {
|
|
127
|
-
this.closeRecords(current, states, diagnostics, events);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Retries the prepared Datastore transaction after bounded aborts.
|
|
132
|
-
*
|
|
133
|
-
* @typeParam I Entity identifier type.
|
|
134
|
-
* @typeParam S Entity state type.
|
|
135
|
-
* @param input Supplies current and immutable records.
|
|
136
|
-
* @param current Provides current Entity storage.
|
|
137
|
-
* @param states Provides state history when enabled.
|
|
138
|
-
* @param diagnostics Provides diagnostic history when enabled.
|
|
139
|
-
* @param events Provides delivery Event storage.
|
|
140
|
-
* @returns Completion after a successful transaction.
|
|
141
|
-
*/
|
|
142
|
-
async run(input, current, states, diagnostics, events) {
|
|
143
|
-
const prepared = this.prepare(input, current, states, diagnostics, events);
|
|
144
|
-
validateCommitSize(prepared.map((row) => row.entity));
|
|
145
|
-
for (let attempt = 0; attempt < 3; attempt += 1) {
|
|
146
127
|
try {
|
|
147
|
-
await this.
|
|
148
|
-
return;
|
|
128
|
+
await this.apply(prepared, current, states, diagnostics, events);
|
|
149
129
|
}
|
|
150
130
|
catch (error) {
|
|
151
|
-
if (
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
throw entityTransactionError(error);
|
|
131
|
+
if (!this.retryable(error))
|
|
132
|
+
throw error;
|
|
133
|
+
await this.apply(prepared, current, states, diagnostics, events);
|
|
156
134
|
}
|
|
157
135
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
* @typeParam I Entity identifier type.
|
|
164
|
-
* @param input Supplies records to materialize.
|
|
165
|
-
* @param current Provides current Entity storage.
|
|
166
|
-
* @param states Provides state history when enabled.
|
|
167
|
-
* @param diagnostics Provides diagnostic history when enabled.
|
|
168
|
-
* @param events Provides delivery Event storage.
|
|
169
|
-
* @returns Deduplicated rows for the transaction.
|
|
170
|
-
*/
|
|
171
|
-
prepare(input, current, states, diagnostics, events) {
|
|
172
|
-
return coalesceImmutableRows([
|
|
173
|
-
...preparedRows(current, [input.next], false),
|
|
174
|
-
...preparedRows(states, input.states ?? [], true),
|
|
175
|
-
...preparedRows(diagnostics, input.diagnostics ?? [], true),
|
|
176
|
-
...preparedRows(events, input.events ?? [], true),
|
|
177
|
-
]);
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Applies one prepared transaction attempt and rolls back on failure.
|
|
181
|
-
*
|
|
182
|
-
* @typeParam I Entity identifier type.
|
|
183
|
-
* @param current Opens a transaction for the Entity scope.
|
|
184
|
-
* @param prepared Supplies current and immutable rows.
|
|
185
|
-
* @returns Completion after the transaction commits.
|
|
186
|
-
*/
|
|
187
|
-
async tryCommit(current, prepared) {
|
|
188
|
-
const transaction = current.transaction();
|
|
189
|
-
try {
|
|
190
|
-
await transaction.run();
|
|
191
|
-
const values = await this.load(transaction, prepared);
|
|
192
|
-
this.validateImmutable(prepared, values);
|
|
193
|
-
this.apply(transaction, prepared, values);
|
|
194
|
-
await transaction.commit();
|
|
195
|
-
}
|
|
196
|
-
catch (error) {
|
|
197
|
-
await rollback(transaction);
|
|
198
|
-
throw error;
|
|
136
|
+
finally {
|
|
137
|
+
current.close();
|
|
138
|
+
states?.close();
|
|
139
|
+
diagnostics?.close();
|
|
140
|
+
events?.close();
|
|
199
141
|
}
|
|
200
142
|
}
|
|
201
143
|
/**
|
|
202
|
-
*
|
|
144
|
+
* Writes independent record families in Entity commit order.
|
|
203
145
|
*
|
|
204
|
-
* @
|
|
205
|
-
* @
|
|
206
|
-
* @
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
])
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
}
|
|
231
|
-
/**
|
|
232
|
-
* Writes missing immutable rows and changed current state in the transaction.
|
|
146
|
+
* @typeParam I Entity identifier type.
|
|
147
|
+
* @typeParam S Entity state message type.
|
|
148
|
+
* @param input Supplies immutable prepared records.
|
|
149
|
+
* @param current Stores current Entity state.
|
|
150
|
+
* @param states Stores state history when requested.
|
|
151
|
+
* @param diagnostics Stores diagnostic Events when requested.
|
|
152
|
+
* @param events Stores delivery Events when requested.
|
|
153
|
+
* @returns Completion after every requested record write.
|
|
154
|
+
*/
|
|
155
|
+
async apply(input, current, states, diagnostics, events) {
|
|
156
|
+
if (states !== undefined)
|
|
157
|
+
for (const record of input.states ?? [])
|
|
158
|
+
await immutable(states, record);
|
|
159
|
+
if (diagnostics !== undefined)
|
|
160
|
+
for (const event of input.diagnostics ?? [])
|
|
161
|
+
await immutable(diagnostics, event);
|
|
162
|
+
if (events !== undefined)
|
|
163
|
+
for (const event of input.events ?? [])
|
|
164
|
+
await immutable(events, event);
|
|
165
|
+
const previous = await current.read(input.entityId);
|
|
166
|
+
if (previous === undefined ||
|
|
167
|
+
!same(toBinary(EntityRecordSchema, previous), toBinary(EntityRecordSchema, input.next)))
|
|
168
|
+
await current.write(input.next);
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Determines whether a Datastore abort occurred through provider error causes.
|
|
233
172
|
*
|
|
234
|
-
* @param
|
|
235
|
-
* @
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
for (
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
173
|
+
* @param error Supplies the operation failure.
|
|
174
|
+
* @returns Whether one captured-input replay is safe.
|
|
175
|
+
*/
|
|
176
|
+
retryable(error) {
|
|
177
|
+
let current = error;
|
|
178
|
+
for (let depth = 0; depth < 4; depth += 1) {
|
|
179
|
+
if (typeof current !== "object" || current === null)
|
|
180
|
+
return false;
|
|
181
|
+
const failure = current;
|
|
182
|
+
if (failure.code === 10)
|
|
183
|
+
return true;
|
|
184
|
+
current = failure.cause;
|
|
243
185
|
}
|
|
244
|
-
|
|
245
|
-
/**
|
|
246
|
-
* Closes temporary record-family handles after the commit attempt.
|
|
247
|
-
*
|
|
248
|
-
* @param current Supplies current Entity storage.
|
|
249
|
-
* @param states Supplies state history when enabled.
|
|
250
|
-
* @param diagnostics Supplies diagnostic history when enabled.
|
|
251
|
-
* @param events Supplies delivery Event storage.
|
|
252
|
-
*/
|
|
253
|
-
closeRecords(current, states, diagnostics, events) {
|
|
254
|
-
current.close();
|
|
255
|
-
states?.close();
|
|
256
|
-
diagnostics?.close();
|
|
257
|
-
events.close();
|
|
186
|
+
return false;
|
|
258
187
|
}
|
|
259
188
|
/**
|
|
260
189
|
* Closes this commit storage to further commits.
|
|
@@ -273,12 +202,15 @@ export class DatastoreEntityCommitStorage {
|
|
|
273
202
|
if (!this.#open)
|
|
274
203
|
throw new Error("Entity commit storage is closed.");
|
|
275
204
|
if (input.entity.sourceType.typeName !== this.input.sourceType.typeName ||
|
|
276
|
-
|
|
205
|
+
input.entity.stateSchema.typeName !== this.input.stateSchema.typeName ||
|
|
206
|
+
TenantBoundary.of(input.context).key !== TenantBoundary.of(this.input.context).key ||
|
|
207
|
+
TenantBoundary.of(input.entity.context).key !== TenantBoundary.of(this.input.context).key)
|
|
277
208
|
throw new Error("Entity commit handle cannot commit another Entity source or tenant.");
|
|
278
209
|
validateCommitEntityId(input);
|
|
279
|
-
if ((input.states?.length ?? 0) > 0 && !input.entity.stateHistory)
|
|
210
|
+
if ((input.states?.length ?? 0) > 0 && (!this.input.stateHistory || !input.entity.stateHistory))
|
|
280
211
|
throw new Error("Entity commit cannot append state history when it is disabled.");
|
|
281
|
-
if ((input.diagnostics?.length ?? 0) > 0 &&
|
|
212
|
+
if ((input.diagnostics?.length ?? 0) > 0 &&
|
|
213
|
+
(!this.input.eventHistory || !input.entity.eventHistory))
|
|
282
214
|
throw new Error("Entity commit cannot append event history when it is disabled.");
|
|
283
215
|
validateEvents(input.events ?? []);
|
|
284
216
|
}
|
|
@@ -617,58 +549,17 @@ class EventHistory {
|
|
|
617
549
|
*/
|
|
618
550
|
async function immutable(records, record) {
|
|
619
551
|
const id = records.recordSpec.idValueIn(record);
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
}
|
|
628
|
-
/**
|
|
629
|
-
* Prepares Datastore rows for one record family.
|
|
630
|
-
*
|
|
631
|
-
* @typeParam I Record identifier type.
|
|
632
|
-
* @typeParam R Stored Protobuf message type.
|
|
633
|
-
* @param storage Provides the record-family handle when enabled.
|
|
634
|
-
* @param records Supplies records to prepare.
|
|
635
|
-
* @param immutable Marks whether existing rows must remain unchanged.
|
|
636
|
-
* @returns The prepared rows for the transaction.
|
|
637
|
-
*/
|
|
638
|
-
function preparedRows(storage, records, immutable) {
|
|
639
|
-
if (storage === undefined) {
|
|
640
|
-
if (records.length > 0)
|
|
641
|
-
throw new Error("Entity commit history is disabled.");
|
|
642
|
-
return [];
|
|
643
|
-
}
|
|
644
|
-
return records.map((record) => ({
|
|
645
|
-
storage,
|
|
646
|
-
record,
|
|
647
|
-
immutable,
|
|
648
|
-
entity: storage.transactionEntity(record),
|
|
649
|
-
}));
|
|
650
|
-
}
|
|
651
|
-
/**
|
|
652
|
-
* Removes duplicate immutable rows and rejects conflicting content.
|
|
653
|
-
*
|
|
654
|
-
* @typeParam R Prepared row type.
|
|
655
|
-
* @param rows Supplies prepared current and history rows.
|
|
656
|
-
* @returns Rows with duplicate immutable keys removed.
|
|
657
|
-
*/
|
|
658
|
-
function coalesceImmutableRows(rows) {
|
|
659
|
-
const seen = new Map();
|
|
660
|
-
return rows.filter((row) => {
|
|
661
|
-
if (!row.immutable)
|
|
662
|
-
return true;
|
|
663
|
-
const previous = seen.get(keyId(row.entity.key));
|
|
664
|
-
if (previous === undefined) {
|
|
665
|
-
seen.set(keyId(row.entity.key), row);
|
|
666
|
-
return true;
|
|
667
|
-
}
|
|
668
|
-
if (!sameData(previous.entity.data, row.entity.data))
|
|
552
|
+
for (let attempt = 0; attempt < 3; attempt += 1) {
|
|
553
|
+
if (await records.compareAndSet(id, undefined, record))
|
|
554
|
+
return;
|
|
555
|
+
const existing = await records.read(id);
|
|
556
|
+
if (existing === undefined)
|
|
557
|
+
continue;
|
|
558
|
+
if (!same(toBinary(records.recordSpec.recordType, existing), toBinary(records.recordSpec.recordType, record)))
|
|
669
559
|
throw new Error("Immutable history record has divergent content.");
|
|
670
|
-
return
|
|
671
|
-
}
|
|
560
|
+
return;
|
|
561
|
+
}
|
|
562
|
+
throw new Error("Immutable history record was not retained.");
|
|
672
563
|
}
|
|
673
564
|
function same(left, right) {
|
|
674
565
|
return left.length === right.length && left.every((value, index) => value === right[index]);
|
|
@@ -699,61 +590,6 @@ function numberFilter(property, operator, value) {
|
|
|
699
590
|
function timestampFilter(property, operator, value) {
|
|
700
591
|
return { property, operator, value };
|
|
701
592
|
}
|
|
702
|
-
function first(value) {
|
|
703
|
-
return Array.isArray(value) ? value[0] : undefined;
|
|
704
|
-
}
|
|
705
|
-
function keyId(key) {
|
|
706
|
-
return JSON.stringify(key);
|
|
707
|
-
}
|
|
708
|
-
function uniqueKeys(keys) {
|
|
709
|
-
return [...new Map(keys.map((key) => [keyId(key), key])).values()];
|
|
710
|
-
}
|
|
711
|
-
function sameData(left, right) {
|
|
712
|
-
if (left === undefined || right === undefined)
|
|
713
|
-
return left === right;
|
|
714
|
-
const bytes = left.bytes;
|
|
715
|
-
return (bytes instanceof Uint8Array && right.bytes instanceof Uint8Array && same(bytes, right.bytes));
|
|
716
|
-
}
|
|
717
|
-
function isAborted(error) {
|
|
718
|
-
return typeof error === "object" && error !== null && Reflect.get(error, "code") === 10;
|
|
719
|
-
}
|
|
720
|
-
function entityTransactionError(error) {
|
|
721
|
-
if (error instanceof Error && error.message.startsWith("Immutable history record"))
|
|
722
|
-
return error;
|
|
723
|
-
return new Error("Datastore Entity transaction failed.");
|
|
724
|
-
}
|
|
725
|
-
function abortBackoff(attempt) {
|
|
726
|
-
const delayMs = 20 * (attempt + 1) + Math.floor(Math.random() * 40);
|
|
727
|
-
return new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
728
|
-
}
|
|
729
|
-
/**
|
|
730
|
-
* Rolls back a failed Datastore transaction when possible.
|
|
731
|
-
*
|
|
732
|
-
* @param transaction Supplies the transaction to roll back.
|
|
733
|
-
* @returns Completion after rollback finishes or fails.
|
|
734
|
-
*/
|
|
735
|
-
async function rollback(transaction) {
|
|
736
|
-
try {
|
|
737
|
-
await transaction.rollback();
|
|
738
|
-
}
|
|
739
|
-
catch {
|
|
740
|
-
/* original provider error remains authoritative */
|
|
741
|
-
}
|
|
742
|
-
}
|
|
743
|
-
function validateCommitSize(rows) {
|
|
744
|
-
if (rows.length > 500)
|
|
745
|
-
throw new Error("Entity commit exceeds the 500-mutation limit.");
|
|
746
|
-
if (uniqueKeys(rows.map((row) => row.key)).length > 25)
|
|
747
|
-
throw new Error("Entity commit exceeds the 25 entity-group limit.");
|
|
748
|
-
const bytes = rows.reduce((total, row) => total +
|
|
749
|
-
Buffer.byteLength(JSON.stringify(row.data, (_key, value) => value instanceof Uint8Array
|
|
750
|
-
? Buffer.from(value).toString("base64")
|
|
751
|
-
: typeof value === "bigint"
|
|
752
|
-
? value.toString()
|
|
753
|
-
: value), "utf8"), 0);
|
|
754
|
-
if (bytes > 9 * 1024 * 1024)
|
|
755
|
-
throw new Error("Entity commit exceeds the transaction payload limit.");
|
|
756
|
-
}
|
|
757
593
|
function validateEvents(events) {
|
|
758
594
|
const ids = events.map((event) => event.id?.value);
|
|
759
595
|
if (ids.some((id) => id === undefined || id.trim().length === 0) ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-history.js","sourceRoot":"","sources":["../../src/datastore/entity-history.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entity-history.js","sourceRoot":"","sources":["../../src/datastore/entity-history.ts"],"names":[],"mappings":"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"}
|
|
@@ -119,6 +119,13 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
|
|
|
119
119
|
readonly data: Record<string, unknown>;
|
|
120
120
|
readonly excludeFromIndexes: readonly string[];
|
|
121
121
|
};
|
|
122
|
+
/**
|
|
123
|
+
* Returns the exact tenant-scoped native key for a typed record ID.
|
|
124
|
+
*
|
|
125
|
+
* @param id Complete persisted record identity.
|
|
126
|
+
* @returns Native key for the typed record identity.
|
|
127
|
+
*/
|
|
128
|
+
transactionKey(id: I): ReturnType<Datastore["key"]>;
|
|
122
129
|
/**
|
|
123
130
|
* Decodes one entity read by a provider-owned multi-record transaction.
|
|
124
131
|
*
|
|
@@ -147,6 +154,15 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
|
|
|
147
154
|
* @internal
|
|
148
155
|
*/
|
|
149
156
|
queryProviderPage(request: DatastorePageQuery): Promise<DatastorePage<I, R>>;
|
|
157
|
+
/**
|
|
158
|
+
* Reads at most two indexed successor records inside the caller's transaction.
|
|
159
|
+
*
|
|
160
|
+
* @param filters Native indexed query predicates.
|
|
161
|
+
* @param orderProperty Native property containing the complete order key.
|
|
162
|
+
* @param transaction Current native transaction.
|
|
163
|
+
* @returns Earliest scoped rows in native order.
|
|
164
|
+
*/
|
|
165
|
+
queryTransactionSuccessors(transaction: ReturnType<Datastore["transaction"]>, filters: readonly DatastoreRangeFilter[], orderProperty: string): Promise<readonly R[]>;
|
|
150
166
|
/**
|
|
151
167
|
* Deletes a bounded group of provider entries.
|
|
152
168
|
*
|
|
@@ -157,23 +173,27 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
|
|
|
157
173
|
deleteProviderEntries(entries: readonly RecordEntry<I, R>[]): Promise<void>;
|
|
158
174
|
/**
|
|
159
175
|
* Deletes the record at one storage slot.
|
|
176
|
+
*
|
|
160
177
|
* @param id The storage slot identifier.
|
|
161
178
|
* @returns Whether a record was deleted.
|
|
162
179
|
*/
|
|
163
180
|
protected deleteRecord(id: I): Promise<boolean>;
|
|
164
181
|
/**
|
|
165
182
|
* Returns records matching a query.
|
|
183
|
+
*
|
|
166
184
|
* @param _query The record query.
|
|
167
185
|
* @returns The matching storage entries.
|
|
168
186
|
*/
|
|
169
187
|
protected queryRecordEntries(_query: RecordQuery<I>): Promise<readonly RecordEntry<I, R>[]>;
|
|
170
188
|
/**
|
|
171
189
|
* Returns the supported Datastore query capabilities.
|
|
190
|
+
*
|
|
172
191
|
* @returns The supported query capabilities.
|
|
173
192
|
*/
|
|
174
193
|
protected queryCapabilities(): StorageQueryCapabilities;
|
|
175
194
|
/**
|
|
176
195
|
* Returns candidate records for a normalized query plan.
|
|
196
|
+
*
|
|
177
197
|
* @param plan The normalized query plan.
|
|
178
198
|
* @returns The candidate storage entries.
|
|
179
199
|
*/
|
|
@@ -210,12 +230,14 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
|
|
|
210
230
|
private planQuery;
|
|
211
231
|
/**
|
|
212
232
|
* Reads the record at one storage slot.
|
|
233
|
+
*
|
|
213
234
|
* @param id The storage slot identifier.
|
|
214
235
|
* @returns The stored record, if present.
|
|
215
236
|
*/
|
|
216
237
|
protected readRecord(id: I): Promise<R | undefined>;
|
|
217
238
|
/**
|
|
218
239
|
* Compares and conditionally replaces the record at one storage slot.
|
|
240
|
+
*
|
|
219
241
|
* @param id The storage slot identifier.
|
|
220
242
|
* @param expected The expected materialized record.
|
|
221
243
|
* @param next The replacement materialized record, if any.
|
|
@@ -233,12 +255,14 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
|
|
|
233
255
|
private attemptCompareAndSet;
|
|
234
256
|
/**
|
|
235
257
|
* Writes materialized records.
|
|
258
|
+
*
|
|
236
259
|
* @param records The materialized records to write.
|
|
237
260
|
* @returns Completes when the records are written.
|
|
238
261
|
*/
|
|
239
262
|
protected writeAllRecords(records: readonly ReturnType<RecordSpec<I, R>["materialize"]>[]): Promise<void>;
|
|
240
263
|
/**
|
|
241
264
|
* Writes one materialized record.
|
|
265
|
+
*
|
|
242
266
|
* @param record The materialized record to write.
|
|
243
267
|
* @returns Completes when the record is written.
|
|
244
268
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-storage.d.ts","sourceRoot":"","sources":["../../src/datastore/record-storage.ts"],"names":[],"mappings":"AAcA,OAAO,EAAwB,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAO,SAAS,EAAsB,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"record-storage.d.ts","sourceRoot":"","sources":["../../src/datastore/record-storage.ts"],"names":[],"mappings":"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"}
|