@spine-event-engine/storage-datastore 2.0.0-snapshot.22 → 2.0.0-snapshot.23
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 +5 -0
- package/REFERENCE.md +41 -1
- 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/record-storage.d.ts +24 -0
- package/dist/datastore/record-storage.d.ts.map +1 -1
- package/dist/datastore/record-storage.js +43 -3
- package/dist/datastore/record-storage.js.map +1 -1
- package/dist/datastore/storage-factory.d.ts +118 -12
- package/dist/datastore/storage-factory.d.ts.map +1 -1
- package/dist/datastore/storage-factory.js +303 -0
- 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
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { Time } from "@spine-event-engine/core/time";
|
|
15
15
|
import { Datastore } from "@google-cloud/datastore";
|
|
16
|
-
import { TenantBoundary, } from "@spine-event-engine/storage/provider";
|
|
16
|
+
import { TenantBoundary, TenantCatalogReads, } from "@spine-event-engine/storage/provider";
|
|
17
17
|
import { NamespaceAssignments } from "./namespace.js";
|
|
18
18
|
const earlyTenantTtlMs = 60_000;
|
|
19
19
|
const maxEarlyTenants = 1_000;
|
|
@@ -22,6 +22,7 @@ const maxEarlyTenants = 1_000;
|
|
|
22
22
|
*/
|
|
23
23
|
export class DatastoreTenantCatalog {
|
|
24
24
|
client;
|
|
25
|
+
#cursorIdentity = {};
|
|
25
26
|
#kept = new Map();
|
|
26
27
|
#converter;
|
|
27
28
|
#now;
|
|
@@ -90,6 +91,121 @@ export class DatastoreTenantCatalog {
|
|
|
90
91
|
.sort((left, right) => left.namespace.localeCompare(right.namespace))
|
|
91
92
|
.map(({ boundary }) => boundary);
|
|
92
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* Reads one bounded early-admission or native namespace page.
|
|
96
|
+
*
|
|
97
|
+
* @param request Finite candidate limit and instance-bound continuation.
|
|
98
|
+
* @returns A possibly empty continuing tenant page.
|
|
99
|
+
*/
|
|
100
|
+
async page(request) {
|
|
101
|
+
this.requireOpen();
|
|
102
|
+
TenantCatalogReads.require(request);
|
|
103
|
+
const prior = request.after;
|
|
104
|
+
if (prior !== undefined && !(prior instanceof DatastoreTenantCursor))
|
|
105
|
+
throw new TypeError("Datastore tenant catalog continuation is invalid.");
|
|
106
|
+
const cursor = prior?.state(this.#cursorIdentity);
|
|
107
|
+
if (cursor === undefined) {
|
|
108
|
+
this.purgeExpired();
|
|
109
|
+
const early = Object.freeze([...this.#kept.values()].map(({ boundary }) => boundary));
|
|
110
|
+
return this.#earlyPage(request, early, 0);
|
|
111
|
+
}
|
|
112
|
+
if (cursor.phase === "early")
|
|
113
|
+
return this.#earlyPage(request, cursor.early, cursor.index);
|
|
114
|
+
return this.#nativePage(request, cursor.early, cursor.nativeCursor);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Reads only a bounded part of the fixed early-admission snapshot.
|
|
118
|
+
*/
|
|
119
|
+
#earlyPage(request, early, index) {
|
|
120
|
+
const end = Math.min(early.length, index + request.count);
|
|
121
|
+
if (index === end)
|
|
122
|
+
return {
|
|
123
|
+
boundaries: [],
|
|
124
|
+
after: new DatastoreTenantCursor(this.#cursorIdentity, early, "native", 0),
|
|
125
|
+
hasMore: true,
|
|
126
|
+
};
|
|
127
|
+
request.signal.throwIfAborted();
|
|
128
|
+
this.requireOpen();
|
|
129
|
+
return {
|
|
130
|
+
boundaries: early.slice(index, end),
|
|
131
|
+
after: new DatastoreTenantCursor(this.#cursorIdentity, early, end < early.length ? "early" : "native", end),
|
|
132
|
+
hasMore: true,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Converts one finite native metadata response without filling filtered pages.
|
|
137
|
+
*/
|
|
138
|
+
async #nativePage(request, early, start) {
|
|
139
|
+
const boundaries = [];
|
|
140
|
+
let cursor = start;
|
|
141
|
+
let remaining = request.count;
|
|
142
|
+
for (;;) {
|
|
143
|
+
const limit = Math.min(128, remaining);
|
|
144
|
+
const query = this.client.createQuery("", "__namespace__").select("__key__").limit(limit);
|
|
145
|
+
if (cursor !== undefined)
|
|
146
|
+
query.start(cursor);
|
|
147
|
+
const result = await this.#nativeCandidates(query, request, limit);
|
|
148
|
+
request.signal.throwIfAborted();
|
|
149
|
+
this.requireOpen();
|
|
150
|
+
const chunk = this.#nativeResult(result, early, cursor, this.#nativeBoundaries(result.values));
|
|
151
|
+
boundaries.push(...chunk.boundaries);
|
|
152
|
+
remaining -= result.values.length;
|
|
153
|
+
if (!chunk.hasMore || remaining === 0)
|
|
154
|
+
return {
|
|
155
|
+
boundaries,
|
|
156
|
+
...(chunk.after === undefined ? {} : { after: chunk.after }),
|
|
157
|
+
hasMore: chunk.hasMore,
|
|
158
|
+
};
|
|
159
|
+
cursor = result.endCursor;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Converts only this native page's recognized namespaces.
|
|
164
|
+
*/
|
|
165
|
+
#nativeBoundaries(values) {
|
|
166
|
+
const boundaries = [];
|
|
167
|
+
for (const value of values) {
|
|
168
|
+
const namespace = namespaceName(value, this.client.KEY);
|
|
169
|
+
if (namespace === undefined || namespace.length === 0)
|
|
170
|
+
continue;
|
|
171
|
+
const tenantId = this.#converter.fromNamespace(namespace);
|
|
172
|
+
if (tenantId === undefined)
|
|
173
|
+
continue;
|
|
174
|
+
boundaries.push(TenantBoundary.from(tenantId));
|
|
175
|
+
this.#kept.delete(namespace);
|
|
176
|
+
}
|
|
177
|
+
return boundaries;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Validates the native continuation before exposing a catalog page.
|
|
181
|
+
*/
|
|
182
|
+
#nativeResult(result, early, start, boundaries) {
|
|
183
|
+
const more = result.moreResults === Datastore.MORE_RESULTS_AFTER_LIMIT ||
|
|
184
|
+
result.moreResults === Datastore.MORE_RESULTS_AFTER_CURSOR;
|
|
185
|
+
if (result.moreResults === Datastore.MORE_RESULTS_AFTER_LIMIT &&
|
|
186
|
+
result.values.length === 0 &&
|
|
187
|
+
start !== undefined &&
|
|
188
|
+
result.endCursor === start)
|
|
189
|
+
return { boundaries, hasMore: false };
|
|
190
|
+
if (more &&
|
|
191
|
+
(result.endCursor === undefined ||
|
|
192
|
+
result.endCursor.length === 0 ||
|
|
193
|
+
result.endCursor === start))
|
|
194
|
+
throw new Error("Datastore tenant catalog returned a nonadvancing continuation.");
|
|
195
|
+
if (!more && result.moreResults !== Datastore.NO_MORE_RESULTS)
|
|
196
|
+
throw new Error("Datastore tenant catalog returned invalid continuation metadata.");
|
|
197
|
+
const after = more
|
|
198
|
+
? new DatastoreTenantCursor(this.#cursorIdentity, early, "native", 0, result.endCursor)
|
|
199
|
+
: undefined;
|
|
200
|
+
return { boundaries, ...(after === undefined ? {} : { after }), hasMore: more };
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Collects no more than one native query limit with caller cancellation.
|
|
204
|
+
*/
|
|
205
|
+
#nativeCandidates(query, request, limit) {
|
|
206
|
+
const stream = this.client.runQueryStream(query);
|
|
207
|
+
return collectNativeCandidates(stream, request, limit);
|
|
208
|
+
}
|
|
93
209
|
/**
|
|
94
210
|
* Records an admitted tenant until native metadata becomes visible.
|
|
95
211
|
*
|
|
@@ -106,6 +222,7 @@ export class DatastoreTenantCatalog {
|
|
|
106
222
|
}
|
|
107
223
|
/**
|
|
108
224
|
* Stores a tenant namespace until native Datastore metadata becomes visible.
|
|
225
|
+
*
|
|
109
226
|
* @param boundary The tenant admitted for early reads.
|
|
110
227
|
*/
|
|
111
228
|
keepNow(boundary) {
|
|
@@ -152,6 +269,113 @@ export class DatastoreTenantCatalog {
|
|
|
152
269
|
}
|
|
153
270
|
}
|
|
154
271
|
}
|
|
272
|
+
/**
|
|
273
|
+
* Immutable phase and native cursor tied to one Datastore catalog.
|
|
274
|
+
*/
|
|
275
|
+
class DatastoreTenantCursor {
|
|
276
|
+
[Symbol.toStringTag] = "TenantCatalogCursor";
|
|
277
|
+
#identity;
|
|
278
|
+
#early;
|
|
279
|
+
#phase;
|
|
280
|
+
#index;
|
|
281
|
+
#nativeCursor;
|
|
282
|
+
/**
|
|
283
|
+
* Captures one early-cache or native namespace continuation.
|
|
284
|
+
*
|
|
285
|
+
* @param identity Private catalog issuance identity.
|
|
286
|
+
* @param early Bounded early-admission snapshot.
|
|
287
|
+
* @param phase Current early or native phase.
|
|
288
|
+
* @param index Next early-admission position.
|
|
289
|
+
* @param nativeCursor Native namespace continuation, when present.
|
|
290
|
+
*/
|
|
291
|
+
constructor(identity, early, phase, index, nativeCursor) {
|
|
292
|
+
this.#identity = identity;
|
|
293
|
+
this.#early = early;
|
|
294
|
+
this.#phase = phase;
|
|
295
|
+
this.#index = index;
|
|
296
|
+
this.#nativeCursor = nativeCursor;
|
|
297
|
+
Object.freeze(this);
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Verifies issuance before exposing this catalog's sweep position.
|
|
301
|
+
*
|
|
302
|
+
* @param identity Private identity of the reading catalog.
|
|
303
|
+
* @returns Bounded early snapshot and phase-specific continuation.
|
|
304
|
+
*/
|
|
305
|
+
state(identity) {
|
|
306
|
+
if (this.#identity !== identity)
|
|
307
|
+
throw new TypeError("Datastore tenant catalog continuation is invalid.");
|
|
308
|
+
return {
|
|
309
|
+
early: this.#early,
|
|
310
|
+
phase: this.#phase,
|
|
311
|
+
index: this.#index,
|
|
312
|
+
...(this.#nativeCursor === undefined ? {} : { nativeCursor: this.#nativeCursor }),
|
|
313
|
+
};
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Collects one finite native namespace query with caller cancellation.
|
|
318
|
+
*
|
|
319
|
+
* @param stream Public Datastore query stream.
|
|
320
|
+
* @param request Finite page request and cancellation.
|
|
321
|
+
* @returns Native candidates and continuation metadata.
|
|
322
|
+
*/
|
|
323
|
+
function collectNativeCandidates(stream, request, limit) {
|
|
324
|
+
return new Promise((resolve, reject) => {
|
|
325
|
+
const state = { values: [], info: {}, settled: false };
|
|
326
|
+
const finish = (error) => {
|
|
327
|
+
if (state.settled)
|
|
328
|
+
return;
|
|
329
|
+
state.settled = true;
|
|
330
|
+
request.signal.removeEventListener("abort", onAbort);
|
|
331
|
+
if (error === undefined)
|
|
332
|
+
resolve({ values: state.values, ...state.info });
|
|
333
|
+
else
|
|
334
|
+
reject(error);
|
|
335
|
+
};
|
|
336
|
+
const onAbort = () => {
|
|
337
|
+
finish(new Error("Datastore tenant catalog discovery was cancelled."));
|
|
338
|
+
stream.destroy();
|
|
339
|
+
};
|
|
340
|
+
request.signal.addEventListener("abort", onAbort, { once: true });
|
|
341
|
+
observeNativeCandidates(stream, limit, state, finish);
|
|
342
|
+
if (request.signal.aborted)
|
|
343
|
+
onAbort();
|
|
344
|
+
});
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Observes one bounded stream and ignores data after settlement.
|
|
348
|
+
*
|
|
349
|
+
* @param stream Public Datastore query stream.
|
|
350
|
+
* @param count Maximum native candidates.
|
|
351
|
+
* @param state Mutable state for this one page.
|
|
352
|
+
* @param onFinish Completes the page once.
|
|
353
|
+
*/
|
|
354
|
+
function observeNativeCandidates(stream, count, state, onFinish) {
|
|
355
|
+
stream.on("data", (value) => {
|
|
356
|
+
if (state.settled)
|
|
357
|
+
return;
|
|
358
|
+
if (state.values.length >= count) {
|
|
359
|
+
onFinish(new Error("Datastore tenant catalog exceeded the page limit."));
|
|
360
|
+
stream.destroy();
|
|
361
|
+
}
|
|
362
|
+
else
|
|
363
|
+
state.values.push(value);
|
|
364
|
+
});
|
|
365
|
+
stream.on("info", (value) => {
|
|
366
|
+
if (!state.settled)
|
|
367
|
+
state.info = value;
|
|
368
|
+
});
|
|
369
|
+
stream.on("error", () => {
|
|
370
|
+
onFinish(new Error("Datastore namespace discovery failed."));
|
|
371
|
+
});
|
|
372
|
+
stream.on("end", () => {
|
|
373
|
+
onFinish();
|
|
374
|
+
});
|
|
375
|
+
stream.on("close", () => {
|
|
376
|
+
onFinish(new Error("Datastore namespace discovery closed before completion."));
|
|
377
|
+
});
|
|
378
|
+
}
|
|
155
379
|
function namespaceName(value, keySymbol) {
|
|
156
380
|
if (typeof value !== "object" || value === null)
|
|
157
381
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-catalog.js","sourceRoot":"","sources":["../../src/datastore/tenant-catalog.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tenant-catalog.js","sourceRoot":"","sources":["../../src/datastore/tenant-catalog.ts"],"names":[],"mappings":"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"}
|