@resonatehq/sdk 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/retry.d.ts +1 -1
- package/dist/core/retry.d.ts.map +1 -1
- package/dist/core/retry.js +4 -1
- package/dist/core/retry.js.map +1 -1
- package/dist/resonate.d.ts +52 -6
- package/dist/resonate.d.ts.map +1 -1
- package/dist/resonate.js +195 -225
- package/dist/resonate.js.map +1 -1
- package/package.json +3 -3
package/dist/core/retry.d.ts
CHANGED
|
@@ -33,5 +33,5 @@ export declare function retryIterator<T extends {
|
|
|
33
33
|
attempt: number;
|
|
34
34
|
timeout: number;
|
|
35
35
|
}>(ctx: T): IterableIterator<number>;
|
|
36
|
-
export declare function runWithRetry<T>(func: () => Promise<T>, retryPolicy: RetryPolicy, timeout: number): Promise<T>;
|
|
36
|
+
export declare function runWithRetry<T>(func: () => Promise<T>, onRetry: () => Promise<void>, retryPolicy: RetryPolicy, timeout: number): Promise<T>;
|
|
37
37
|
//# sourceMappingURL=retry.d.ts.map
|
package/dist/core/retry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../lib/core/retry.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAqClE;AACD,wBAAgB,WAAW,CACzB,cAAc,GAAE,MAAY,EAC5B,aAAa,GAAE,MAAU,EACzB,WAAW,GAAE,MAAiB,EAC9B,UAAU,GAAE,MAAc,GACzB,WAAW,CAQb;AAED,wBAAgB,MAAM,CAAC,OAAO,GAAE,MAAa,EAAE,WAAW,GAAE,MAAiB,GAAG,MAAM,CAMrF;AAED,wBAAgB,KAAK,IAAI,KAAK,CAE7B;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EACpG,GAAG,EAAE,CAAC,GACL,gBAAgB,CAAC,MAAM,CAAC,CA8B1B;AAED,wBAAsB,YAAY,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../lib/core/retry.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAqClE;AACD,wBAAgB,WAAW,CACzB,cAAc,GAAE,MAAY,EAC5B,aAAa,GAAE,MAAU,EACzB,WAAW,GAAE,MAAiB,EAC9B,UAAU,GAAE,MAAc,GACzB,WAAW,CAQb;AAED,wBAAgB,MAAM,CAAC,OAAO,GAAE,MAAa,EAAE,WAAW,GAAE,MAAiB,GAAG,MAAM,CAMrF;AAED,wBAAgB,KAAK,IAAI,KAAK,CAE7B;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EACpG,GAAG,EAAE,CAAC,GACL,gBAAgB,CAAC,MAAM,CAAC,CA8B1B;AAED,wBAAsB,YAAY,CAAC,CAAC,EAClC,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACtB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAC5B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,cAwBhB"}
|
package/dist/core/retry.js
CHANGED
|
@@ -91,12 +91,15 @@ function retryIterator(ctx) {
|
|
|
91
91
|
};
|
|
92
92
|
}
|
|
93
93
|
exports.retryIterator = retryIterator;
|
|
94
|
-
async function runWithRetry(func, retryPolicy, timeout) {
|
|
94
|
+
async function runWithRetry(func, onRetry, retryPolicy, timeout) {
|
|
95
95
|
let error;
|
|
96
96
|
const ctx = { attempt: 0, retryPolicy, timeout };
|
|
97
97
|
// invoke the function according to the retry policy
|
|
98
98
|
for (const delay of retryIterator(ctx)) {
|
|
99
99
|
await new Promise((resolve) => setTimeout(resolve, delay));
|
|
100
|
+
if (ctx.attempt > 0) {
|
|
101
|
+
await onRetry();
|
|
102
|
+
}
|
|
100
103
|
try {
|
|
101
104
|
return await func();
|
|
102
105
|
}
|
package/dist/core/retry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../lib/core/retry.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../lib/core/retry.ts"],"names":[],"mappings":"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"}
|
package/dist/resonate.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { ILogger } from "./core/logger";
|
|
|
2
2
|
import { PartialOptions, Options, InvocationOverrides, ResonateOptions } from "./core/options";
|
|
3
3
|
import * as durablePromises from "./core/promises/promises";
|
|
4
4
|
import * as schedules from "./core/schedules/schedules";
|
|
5
|
-
import { IStore } from "./core/store";
|
|
5
|
+
import { ILockStore, IPromiseStore, IStore } from "./core/store";
|
|
6
6
|
type InvocationData = {
|
|
7
7
|
id: string;
|
|
8
8
|
eid: string;
|
|
@@ -23,8 +23,9 @@ export declare class Resonate {
|
|
|
23
23
|
logger, pid, pollFrequency, // 5s
|
|
24
24
|
retryPolicy, store, tags, timeout, // 10s
|
|
25
25
|
url, }?: Partial<ResonateOptions>);
|
|
26
|
-
get promisesStore():
|
|
27
|
-
get locksStore():
|
|
26
|
+
get promisesStore(): IPromiseStore;
|
|
27
|
+
get locksStore(): ILockStore;
|
|
28
|
+
options(opts: Partial<Options>): PartialOptions;
|
|
28
29
|
registeredFunction(funcName: string, version: number): {
|
|
29
30
|
func: Func;
|
|
30
31
|
opts: Options;
|
|
@@ -75,11 +76,56 @@ export declare class Context {
|
|
|
75
76
|
private constructor();
|
|
76
77
|
static createRootContext(resonate: Resonate, invocationData: InvocationData): Context;
|
|
77
78
|
static createChildrenContext(parentCtx: Context, invocationData: InvocationData): Context;
|
|
78
|
-
|
|
79
|
+
onRetry(): Promise<void>;
|
|
79
80
|
finalize(): Promise<void>;
|
|
80
81
|
abort(cause: any): void;
|
|
81
82
|
get aborted(): boolean;
|
|
82
83
|
get abortCause(): any;
|
|
84
|
+
/**
|
|
85
|
+
* Adds a finalizer function to be executed at the end of the current context.
|
|
86
|
+
* Finalizers are run in reverse order of their definition (last-in, first-out).
|
|
87
|
+
*
|
|
88
|
+
* @param fn - An asynchronous function to be executed as a finalizer.
|
|
89
|
+
* It should return a Promise that resolves to void.
|
|
90
|
+
*
|
|
91
|
+
* @remarks
|
|
92
|
+
* Finalizer functions must be non fallible.
|
|
93
|
+
*/
|
|
94
|
+
addFinalizer(fn: () => Promise<void>): void;
|
|
95
|
+
/**
|
|
96
|
+
* Sets a named resource for the current context and optionally adds a finalizer.
|
|
97
|
+
*
|
|
98
|
+
* @param name - A unique string identifier for the resource.
|
|
99
|
+
* @param resource - The resource to be stored. Can be of any type.
|
|
100
|
+
* @param finalizer - Optional. An asynchronous function to be executed when the context ends.
|
|
101
|
+
* Finalizers are run in reverse order of their addition to the context and
|
|
102
|
+
* must not fail.
|
|
103
|
+
* @throws {Error} Throws an error if a resource with the same name already exists in the current context.
|
|
104
|
+
*
|
|
105
|
+
* This method associates a resource with a unique name in the current context.
|
|
106
|
+
* If a finalizer is provided, it will be executed when the context ends.
|
|
107
|
+
* Finalizers are useful for cleanup operations, such as closing connections or freeing resources.
|
|
108
|
+
*/
|
|
109
|
+
setResource(name: string, resource: any, finalizer?: () => Promise<void>): void;
|
|
110
|
+
/**
|
|
111
|
+
* Retrieves a resource by name from the current context or its parent contexts.
|
|
112
|
+
*
|
|
113
|
+
* @template R - The expected type of the resource.
|
|
114
|
+
* @param name - The unique string identifier of the resource to retrieve.
|
|
115
|
+
* @returns The resource of type R if found, or undefined if not found.
|
|
116
|
+
*
|
|
117
|
+
* This method searches for a resource in the following order:
|
|
118
|
+
* 1. In the current context.
|
|
119
|
+
* 2. If not found, it recursively searches in parent contexts.
|
|
120
|
+
* 3. Returns undefined if the resource is not found in any context.
|
|
121
|
+
*
|
|
122
|
+
* @remarks
|
|
123
|
+
* The method uses type assertion to cast the resource to type R.
|
|
124
|
+
* Ensure that the type parameter R matches the actual type of the stored resource
|
|
125
|
+
* to avoid runtime type errors.
|
|
126
|
+
*/
|
|
127
|
+
getResource<R>(name: string): R | undefined;
|
|
128
|
+
options(opts: Partial<Options>): PartialOptions;
|
|
83
129
|
/**
|
|
84
130
|
* Invoke a remote function.
|
|
85
131
|
*
|
|
@@ -252,9 +298,9 @@ export interface ResonateSchedules {
|
|
|
252
298
|
search(id: string, tags: Record<string, string> | undefined, limit?: number): AsyncGenerator<schedules.Schedule[], void>;
|
|
253
299
|
}
|
|
254
300
|
export declare class InvocationHandle<R> {
|
|
255
|
-
readonly resultPromise: Promise<R>;
|
|
256
301
|
readonly invocationId: string;
|
|
257
|
-
|
|
302
|
+
readonly resultPromise: Promise<R>;
|
|
303
|
+
constructor(invocationId: string, resultPromise: Promise<R>);
|
|
258
304
|
/**
|
|
259
305
|
* get the current state of the resultPromise.
|
|
260
306
|
*
|
package/dist/resonate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resonate.d.ts","sourceRoot":"","sources":["../lib/resonate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAW,MAAM,gBAAgB,CAAC;AACxG,OAAO,KAAK,eAAe,MAAM,0BAA0B,CAAC;AAI5D,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"resonate.d.ts","sourceRoot":"","sources":["../lib/resonate.ts"],"names":[],"mappings":"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"}
|
package/dist/resonate.js
CHANGED
|
@@ -36,6 +36,7 @@ const local_1 = require("./core/stores/local");
|
|
|
36
36
|
const remote_1 = require("./core/stores/remote");
|
|
37
37
|
const utils = __importStar(require("./core/utils"));
|
|
38
38
|
const utils_1 = require("./core/utils");
|
|
39
|
+
//////////////////////////////////////////////////////////////////////
|
|
39
40
|
class Resonate {
|
|
40
41
|
#registeredFunctions = {};
|
|
41
42
|
#invocationHandles;
|
|
@@ -105,6 +106,9 @@ class Resonate {
|
|
|
105
106
|
get locksStore() {
|
|
106
107
|
return this.store.locks;
|
|
107
108
|
}
|
|
109
|
+
options(opts) {
|
|
110
|
+
return (0, options_1.options)(opts);
|
|
111
|
+
}
|
|
108
112
|
registeredFunction(funcName, version) {
|
|
109
113
|
if (!this.#registeredFunctions[funcName]?.[version]) {
|
|
110
114
|
throw new Error(`Function ${funcName} version ${version} not registered`);
|
|
@@ -230,113 +234,9 @@ class Resonate {
|
|
|
230
234
|
};
|
|
231
235
|
const idempotencyKey = opts.idempotencyKeyFn(id);
|
|
232
236
|
const storedPromise = await this.promisesStore.create(id, idempotencyKey, false, undefined, opts.encoder.encode(param), Date.now() + opts.timeout, opts.tags);
|
|
233
|
-
const
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
// If the promise that comes back from the server is already completed, resolve or reject right away.
|
|
237
|
-
switch (storedPromise.state) {
|
|
238
|
-
case "RESOLVED":
|
|
239
|
-
return opts.encoder.decode(storedPromise.value.data);
|
|
240
|
-
case "REJECTED":
|
|
241
|
-
throw opts.encoder.decode(storedPromise.value.data);
|
|
242
|
-
case "REJECTED_CANCELED":
|
|
243
|
-
throw new errors_1.ResonateError("Resonate function canceled", errors_1.ErrorCodes.CANCELED, opts.encoder.decode(storedPromise.value.data));
|
|
244
|
-
case "REJECTED_TIMEDOUT":
|
|
245
|
-
throw new errors_1.ResonateError(`Resonate function timedout at ${new Date(storedPromise.timeout).toISOString()}`, errors_1.ErrorCodes.TIMEDOUT);
|
|
246
|
-
}
|
|
247
|
-
// storedPromise.state === "PENDING"
|
|
248
|
-
try {
|
|
249
|
-
// Acquire the lock if necessary
|
|
250
|
-
if (opts.shouldLock) {
|
|
251
|
-
const acquireLock = async () => {
|
|
252
|
-
try {
|
|
253
|
-
return await this.store.locks.tryAcquire(id, eid);
|
|
254
|
-
}
|
|
255
|
-
catch (e) {
|
|
256
|
-
// if lock is already acquired, return false so we can poll
|
|
257
|
-
if (e instanceof errors_1.ResonateError && e.code === errors_1.ErrorCodes.STORE_FORBIDDEN) {
|
|
258
|
-
return false;
|
|
259
|
-
}
|
|
260
|
-
throw e;
|
|
261
|
-
}
|
|
262
|
-
};
|
|
263
|
-
while (!(await acquireLock())) {
|
|
264
|
-
await (0, utils_1.sleep)(opts.pollFrequency);
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
let error;
|
|
268
|
-
const ctx = Context.createRootContext(this, { id, eid, name, opts });
|
|
269
|
-
// we need to hold on to a boolean to determine if the function was successful,
|
|
270
|
-
// we cannot rely on the value or error as these values could be undefined
|
|
271
|
-
let success = true;
|
|
272
|
-
try {
|
|
273
|
-
value = await (0, retry_1.runWithRetry)(async () => {
|
|
274
|
-
ctx.reset();
|
|
275
|
-
return await func(ctx, ...args);
|
|
276
|
-
}, opts.retryPolicy, storedPromise.timeout);
|
|
277
|
-
}
|
|
278
|
-
catch (e) {
|
|
279
|
-
if (ctx.aborted) {
|
|
280
|
-
throw e;
|
|
281
|
-
}
|
|
282
|
-
// We need to capture the error to be able to reject the durable promise
|
|
283
|
-
// after that we will then propagate this error by rejecting the result promise
|
|
284
|
-
error = e;
|
|
285
|
-
success = false;
|
|
286
|
-
}
|
|
287
|
-
finally {
|
|
288
|
-
await ctx.finalize();
|
|
289
|
-
}
|
|
290
|
-
let completedPromiseRecord;
|
|
291
|
-
if (success) {
|
|
292
|
-
completedPromiseRecord = await this.promisesStore.resolve(id, idempotencyKey, false, storedPromise.value.headers, opts.encoder.encode(value));
|
|
293
|
-
}
|
|
294
|
-
else {
|
|
295
|
-
completedPromiseRecord = await this.promisesStore.reject(id, idempotencyKey, false, storedPromise.value.headers, opts.encoder.encode(error));
|
|
296
|
-
}
|
|
297
|
-
// Because of eventual consistency and recovery paths it is possible that we get a
|
|
298
|
-
// rejected promise even if we did call `resolve` on it or the other way around.
|
|
299
|
-
// What should never happen is that we get a "PENDING" promise
|
|
300
|
-
switch (completedPromiseRecord.state) {
|
|
301
|
-
case "RESOLVED":
|
|
302
|
-
return value;
|
|
303
|
-
case "REJECTED":
|
|
304
|
-
throw error;
|
|
305
|
-
case "REJECTED_CANCELED":
|
|
306
|
-
throw new errors_1.ResonateError("Resonate function canceled", errors_1.ErrorCodes.CANCELED, error);
|
|
307
|
-
case "REJECTED_TIMEDOUT":
|
|
308
|
-
throw new errors_1.ResonateError(`Resonate function timedout at ${new Date(completedPromiseRecord.timeout).toISOString()}`, errors_1.ErrorCodes.TIMEDOUT);
|
|
309
|
-
case "PENDING":
|
|
310
|
-
throw new Error("Unreachable");
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
catch (err) {
|
|
314
|
-
if (err instanceof errors_1.ResonateError && (err.code === errors_1.ErrorCodes.CANCELED || err.code === errors_1.ErrorCodes.TIMEDOUT)) {
|
|
315
|
-
// Cancel and timeout errors just forward them
|
|
316
|
-
throw err;
|
|
317
|
-
}
|
|
318
|
-
else if (err instanceof errors_1.ResonateError && err.code !== errors_1.ErrorCodes.ABORT) {
|
|
319
|
-
// All other resonate errors we wrap them in an abort.
|
|
320
|
-
throw new errors_1.ResonateError("Unrecoverable Error: Aborting", errors_1.ErrorCodes.ABORT, err);
|
|
321
|
-
}
|
|
322
|
-
else {
|
|
323
|
-
// - The error was already an abort error, for example, the unrecoverable error happened in one
|
|
324
|
-
// of the children invocations
|
|
325
|
-
// - Error in the user function.
|
|
326
|
-
// Either way, just forward it.
|
|
327
|
-
throw err;
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
|
-
finally {
|
|
331
|
-
// release lock if necessary
|
|
332
|
-
if (opts.shouldLock) {
|
|
333
|
-
await this.locksStore.release(id, eid);
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
return value;
|
|
337
|
-
};
|
|
338
|
-
const resultPromise = runFunc();
|
|
339
|
-
const handle = new InvocationHandle(resultPromise, id);
|
|
237
|
+
const ctx = Context.createRootContext(this, { id, name, opts, eid: opts.eidFn(id) });
|
|
238
|
+
const resultPromise = _runFunc(func, ctx, args, idempotencyKey, storedPromise, this.store.locks, this.store.promises);
|
|
239
|
+
const handle = new InvocationHandle(id, resultPromise);
|
|
340
240
|
this.#invocationHandles.set(id, handle);
|
|
341
241
|
return handle;
|
|
342
242
|
}
|
|
@@ -381,6 +281,8 @@ class Context {
|
|
|
381
281
|
#invocationHandles;
|
|
382
282
|
#aborted;
|
|
383
283
|
#abortCause;
|
|
284
|
+
#resources;
|
|
285
|
+
#finalizers;
|
|
384
286
|
childrenCount;
|
|
385
287
|
invocationData;
|
|
386
288
|
parent;
|
|
@@ -388,6 +290,8 @@ class Context {
|
|
|
388
290
|
constructor(resonate, invocationData, parent) {
|
|
389
291
|
this.#resonate = resonate;
|
|
390
292
|
this.#invocationHandles = new Map();
|
|
293
|
+
this.#resources = new Map();
|
|
294
|
+
this.#finalizers = [];
|
|
391
295
|
this.#aborted = false;
|
|
392
296
|
this.parent = parent;
|
|
393
297
|
this.root = !parent ? this : parent.root;
|
|
@@ -400,13 +304,25 @@ class Context {
|
|
|
400
304
|
static createChildrenContext(parentCtx, invocationData) {
|
|
401
305
|
return new Context(parentCtx.#resonate, invocationData, parentCtx);
|
|
402
306
|
}
|
|
403
|
-
|
|
307
|
+
async onRetry() {
|
|
404
308
|
this.childrenCount = 0;
|
|
309
|
+
await this.finalize();
|
|
405
310
|
}
|
|
406
311
|
async finalize() {
|
|
312
|
+
// It is important to await all promises before finalizing the resources
|
|
313
|
+
// doing it the other way around could cause problems
|
|
407
314
|
await Promise.allSettled(Array.from(this.#invocationHandles, ([_, handle]) => handle.result()));
|
|
315
|
+
// We need to run the finalizers in reverse insertion order since later set finalizers might have
|
|
316
|
+
// a dependency in early set resources
|
|
317
|
+
for (const finalizer of this.#finalizers.reverse()) {
|
|
318
|
+
await finalizer();
|
|
319
|
+
}
|
|
320
|
+
this.#resources.clear();
|
|
321
|
+
this.#finalizers = [];
|
|
408
322
|
}
|
|
409
323
|
abort(cause) {
|
|
324
|
+
this.#aborted = true;
|
|
325
|
+
this.#abortCause = cause;
|
|
410
326
|
this.root.#aborted = true;
|
|
411
327
|
this.root.#abortCause = cause;
|
|
412
328
|
}
|
|
@@ -416,6 +332,69 @@ class Context {
|
|
|
416
332
|
get abortCause() {
|
|
417
333
|
return this.#abortCause;
|
|
418
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* Adds a finalizer function to be executed at the end of the current context.
|
|
337
|
+
* Finalizers are run in reverse order of their definition (last-in, first-out).
|
|
338
|
+
*
|
|
339
|
+
* @param fn - An asynchronous function to be executed as a finalizer.
|
|
340
|
+
* It should return a Promise that resolves to void.
|
|
341
|
+
*
|
|
342
|
+
* @remarks
|
|
343
|
+
* Finalizer functions must be non fallible.
|
|
344
|
+
*/
|
|
345
|
+
addFinalizer(fn) {
|
|
346
|
+
this.#finalizers.push(fn);
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Sets a named resource for the current context and optionally adds a finalizer.
|
|
350
|
+
*
|
|
351
|
+
* @param name - A unique string identifier for the resource.
|
|
352
|
+
* @param resource - The resource to be stored. Can be of any type.
|
|
353
|
+
* @param finalizer - Optional. An asynchronous function to be executed when the context ends.
|
|
354
|
+
* Finalizers are run in reverse order of their addition to the context and
|
|
355
|
+
* must not fail.
|
|
356
|
+
* @throws {Error} Throws an error if a resource with the same name already exists in the current context.
|
|
357
|
+
*
|
|
358
|
+
* This method associates a resource with a unique name in the current context.
|
|
359
|
+
* If a finalizer is provided, it will be executed when the context ends.
|
|
360
|
+
* Finalizers are useful for cleanup operations, such as closing connections or freeing resources.
|
|
361
|
+
*/
|
|
362
|
+
setResource(name, resource, finalizer) {
|
|
363
|
+
if (this.#resources.has(name)) {
|
|
364
|
+
throw new Error("Resource already set for this context");
|
|
365
|
+
}
|
|
366
|
+
this.#resources.set(name, resource);
|
|
367
|
+
if (finalizer) {
|
|
368
|
+
this.#finalizers.push(finalizer);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Retrieves a resource by name from the current context or its parent contexts.
|
|
373
|
+
*
|
|
374
|
+
* @template R - The expected type of the resource.
|
|
375
|
+
* @param name - The unique string identifier of the resource to retrieve.
|
|
376
|
+
* @returns The resource of type R if found, or undefined if not found.
|
|
377
|
+
*
|
|
378
|
+
* This method searches for a resource in the following order:
|
|
379
|
+
* 1. In the current context.
|
|
380
|
+
* 2. If not found, it recursively searches in parent contexts.
|
|
381
|
+
* 3. Returns undefined if the resource is not found in any context.
|
|
382
|
+
*
|
|
383
|
+
* @remarks
|
|
384
|
+
* The method uses type assertion to cast the resource to type R.
|
|
385
|
+
* Ensure that the type parameter R matches the actual type of the stored resource
|
|
386
|
+
* to avoid runtime type errors.
|
|
387
|
+
*/
|
|
388
|
+
getResource(name) {
|
|
389
|
+
const resource = this.#resources.get(name);
|
|
390
|
+
if (resource) {
|
|
391
|
+
return resource;
|
|
392
|
+
}
|
|
393
|
+
return this.parent ? this.parent.getResource(name) : undefined;
|
|
394
|
+
}
|
|
395
|
+
options(opts) {
|
|
396
|
+
return (0, options_1.options)(opts);
|
|
397
|
+
}
|
|
419
398
|
async run(funcOrId, ...argsWithOpts) {
|
|
420
399
|
let handle;
|
|
421
400
|
if (typeof funcOrId === "string") {
|
|
@@ -462,7 +441,7 @@ class Context {
|
|
|
462
441
|
throw new Error(`Polling of remote invocation with ${funcId} was stopped`);
|
|
463
442
|
};
|
|
464
443
|
const resultPromise = runFunc();
|
|
465
|
-
const invocationHandle = new InvocationHandle(
|
|
444
|
+
const invocationHandle = new InvocationHandle(funcId, resultPromise);
|
|
466
445
|
this.#invocationHandles.set(funcId, invocationHandle);
|
|
467
446
|
return invocationHandle;
|
|
468
447
|
}
|
|
@@ -481,18 +460,14 @@ class Context {
|
|
|
481
460
|
if (this.#invocationHandles.has(id)) {
|
|
482
461
|
return this.#invocationHandles.get(id);
|
|
483
462
|
}
|
|
463
|
+
const ctx = Context.createChildrenContext(this, { name, id, eid: opts.eidFn(id), opts });
|
|
484
464
|
if (!opts.durable) {
|
|
485
|
-
const eid = opts.eidFn(id);
|
|
486
465
|
const runFunc = async () => {
|
|
487
|
-
const ctx = Context.createChildrenContext(this, { name, id, eid, opts });
|
|
488
466
|
const timeout = Date.now() + opts.timeout;
|
|
489
|
-
return (await (0, retry_1.runWithRetry)(async () =>
|
|
490
|
-
ctx.reset();
|
|
491
|
-
return await func(ctx, ...args);
|
|
492
|
-
}, opts.retryPolicy, timeout));
|
|
467
|
+
return (await (0, retry_1.runWithRetry)(async () => await func(ctx, ...args), async () => await ctx.onRetry(), opts.retryPolicy, timeout));
|
|
493
468
|
};
|
|
494
469
|
const resultPromise = runFunc();
|
|
495
|
-
const handle = new InvocationHandle(
|
|
470
|
+
const handle = new InvocationHandle(id, resultPromise);
|
|
496
471
|
this.#invocationHandles.set(id, handle);
|
|
497
472
|
return handle;
|
|
498
473
|
}
|
|
@@ -500,112 +475,8 @@ class Context {
|
|
|
500
475
|
const param = {};
|
|
501
476
|
const idempotencyKey = opts.idempotencyKeyFn(id);
|
|
502
477
|
const storedPromise = await this.#resonate.promisesStore.create(id, idempotencyKey, false, undefined, opts.encoder.encode(param), Date.now() + opts.timeout, opts.tags);
|
|
503
|
-
const
|
|
504
|
-
|
|
505
|
-
let value;
|
|
506
|
-
// If the promise that comes back from the server is already completed, resolve or reject right away.
|
|
507
|
-
switch (storedPromise.state) {
|
|
508
|
-
case "RESOLVED":
|
|
509
|
-
return opts.encoder.decode(storedPromise.value.data);
|
|
510
|
-
case "REJECTED":
|
|
511
|
-
throw opts.encoder.decode(storedPromise.value.data);
|
|
512
|
-
case "REJECTED_CANCELED":
|
|
513
|
-
throw new errors_1.ResonateError("Resonate function canceled", errors_1.ErrorCodes.CANCELED, opts.encoder.decode(storedPromise.value.data));
|
|
514
|
-
case "REJECTED_TIMEDOUT":
|
|
515
|
-
throw new errors_1.ResonateError(`Resonate function timedout at ${new Date(storedPromise.timeout).toISOString()}`, errors_1.ErrorCodes.TIMEDOUT);
|
|
516
|
-
}
|
|
517
|
-
// storedPromise.state === "PENDING"
|
|
518
|
-
try {
|
|
519
|
-
// Acquire the lock if necessary
|
|
520
|
-
if (opts.shouldLock) {
|
|
521
|
-
const acquireLock = async () => {
|
|
522
|
-
try {
|
|
523
|
-
return await this.#resonate.locksStore.tryAcquire(id, eid);
|
|
524
|
-
}
|
|
525
|
-
catch (e) {
|
|
526
|
-
// if lock is already acquired, return false so we can poll
|
|
527
|
-
if (e instanceof errors_1.ResonateError && e.code === errors_1.ErrorCodes.STORE_FORBIDDEN) {
|
|
528
|
-
return false;
|
|
529
|
-
}
|
|
530
|
-
throw e;
|
|
531
|
-
}
|
|
532
|
-
};
|
|
533
|
-
while (!(await acquireLock())) {
|
|
534
|
-
await (0, utils_1.sleep)(opts.pollFrequency);
|
|
535
|
-
}
|
|
536
|
-
}
|
|
537
|
-
let error;
|
|
538
|
-
const ctx = Context.createChildrenContext(this, { id, eid, name, opts });
|
|
539
|
-
// we need to hold on to a boolean to determine if the function was successful,
|
|
540
|
-
// we cannot rely on the value or error as these values could be undefined
|
|
541
|
-
let success = true;
|
|
542
|
-
try {
|
|
543
|
-
value = await (0, retry_1.runWithRetry)(async () => {
|
|
544
|
-
ctx.reset();
|
|
545
|
-
return await func(ctx, ...args);
|
|
546
|
-
}, opts.retryPolicy, storedPromise.timeout);
|
|
547
|
-
}
|
|
548
|
-
catch (e) {
|
|
549
|
-
// We need to capture the error to be able to reject the durable promise,
|
|
550
|
-
// after that we will then propagate this error by rejecting the result promise
|
|
551
|
-
error = e;
|
|
552
|
-
success = false;
|
|
553
|
-
}
|
|
554
|
-
finally {
|
|
555
|
-
// Resonate will implicitly await all the invocationHandles as the last
|
|
556
|
-
// thing it does with the context before it goes out of scope
|
|
557
|
-
await ctx.finalize();
|
|
558
|
-
}
|
|
559
|
-
if (this.root.aborted) {
|
|
560
|
-
throw new errors_1.ResonateError("Unrecoverable Error: Aborting", errors_1.ErrorCodes.ABORT, this.root.abortCause);
|
|
561
|
-
}
|
|
562
|
-
let completedPromiseRecord;
|
|
563
|
-
if (success) {
|
|
564
|
-
completedPromiseRecord = await this.#resonate.promisesStore.resolve(id, idempotencyKey, false, storedPromise.value.headers, opts.encoder.encode(value));
|
|
565
|
-
}
|
|
566
|
-
else {
|
|
567
|
-
completedPromiseRecord = await this.#resonate.promisesStore.reject(id, idempotencyKey, false, storedPromise.value.headers, opts.encoder.encode(error));
|
|
568
|
-
}
|
|
569
|
-
// Because of eventual consistency and recovery paths it is possible that we get a
|
|
570
|
-
// rejected promise even if we did call `resolve` on it or the other way around.
|
|
571
|
-
// What should never happen is that we get a "PENDING" promise
|
|
572
|
-
switch (completedPromiseRecord.state) {
|
|
573
|
-
case "RESOLVED":
|
|
574
|
-
return value;
|
|
575
|
-
case "REJECTED":
|
|
576
|
-
throw error;
|
|
577
|
-
case "REJECTED_CANCELED":
|
|
578
|
-
throw new errors_1.ResonateError("Resonate function canceled", errors_1.ErrorCodes.CANCELED, error);
|
|
579
|
-
case "REJECTED_TIMEDOUT":
|
|
580
|
-
throw new errors_1.ResonateError(`Resonate function timedout at ${new Date(completedPromiseRecord.timeout).toISOString()}`, errors_1.ErrorCodes.TIMEDOUT);
|
|
581
|
-
case "PENDING":
|
|
582
|
-
throw new Error("Unreachable");
|
|
583
|
-
}
|
|
584
|
-
}
|
|
585
|
-
catch (err) {
|
|
586
|
-
if (err instanceof errors_1.ResonateError && (err.code === errors_1.ErrorCodes.CANCELED || err.code === errors_1.ErrorCodes.TIMEDOUT)) {
|
|
587
|
-
// Cancel and timeout errors, just forward them
|
|
588
|
-
throw err;
|
|
589
|
-
}
|
|
590
|
-
else if (err instanceof errors_1.ResonateError && err.code !== errors_1.ErrorCodes.ABORT) {
|
|
591
|
-
// Any other instance of ResonateError we must abort the current execution.
|
|
592
|
-
this.abort(err);
|
|
593
|
-
throw new errors_1.ResonateError("Unrecoverable Error: Aborting", errors_1.ErrorCodes.ABORT, err);
|
|
594
|
-
}
|
|
595
|
-
else {
|
|
596
|
-
throw err;
|
|
597
|
-
}
|
|
598
|
-
}
|
|
599
|
-
finally {
|
|
600
|
-
// release lock if necessary
|
|
601
|
-
if (opts.shouldLock) {
|
|
602
|
-
await this.#resonate.locksStore.release(id, eid);
|
|
603
|
-
}
|
|
604
|
-
}
|
|
605
|
-
return value;
|
|
606
|
-
};
|
|
607
|
-
const resultPromise = runFunc();
|
|
608
|
-
const invocationHandle = new InvocationHandle(resultPromise, id);
|
|
478
|
+
const resultPromise = _runFunc(func, ctx, args, idempotencyKey, storedPromise, this.#resonate.store.locks, this.#resonate.store.promises);
|
|
479
|
+
const invocationHandle = new InvocationHandle(id, resultPromise);
|
|
609
480
|
this.#invocationHandles.set(id, invocationHandle);
|
|
610
481
|
return invocationHandle;
|
|
611
482
|
}
|
|
@@ -726,11 +597,11 @@ class Context {
|
|
|
726
597
|
}
|
|
727
598
|
exports.Context = Context;
|
|
728
599
|
class InvocationHandle {
|
|
729
|
-
resultPromise;
|
|
730
600
|
invocationId;
|
|
731
|
-
|
|
732
|
-
|
|
601
|
+
resultPromise;
|
|
602
|
+
constructor(invocationId, resultPromise) {
|
|
733
603
|
this.invocationId = invocationId;
|
|
604
|
+
this.resultPromise = resultPromise;
|
|
734
605
|
}
|
|
735
606
|
/**
|
|
736
607
|
* get the current state of the resultPromise.
|
|
@@ -744,4 +615,103 @@ class InvocationHandle {
|
|
|
744
615
|
}
|
|
745
616
|
}
|
|
746
617
|
exports.InvocationHandle = InvocationHandle;
|
|
618
|
+
const acquireLock = async (id, eid, locksStore) => {
|
|
619
|
+
try {
|
|
620
|
+
return await locksStore.tryAcquire(id, eid);
|
|
621
|
+
}
|
|
622
|
+
catch (e) {
|
|
623
|
+
// if lock is already acquired, return false so we can poll
|
|
624
|
+
if (e instanceof errors_1.ResonateError && e.code === errors_1.ErrorCodes.STORE_FORBIDDEN) {
|
|
625
|
+
return false;
|
|
626
|
+
}
|
|
627
|
+
throw e;
|
|
628
|
+
}
|
|
629
|
+
};
|
|
630
|
+
const _runFunc = async (func, ctx, args, idempotencyKey, storedPromise, locksStore, promisesStore) => {
|
|
631
|
+
const { id, eid, opts } = ctx.invocationData;
|
|
632
|
+
// If the promise that comes back from the server is already completed, resolve or reject right away.
|
|
633
|
+
switch (storedPromise.state) {
|
|
634
|
+
case "RESOLVED":
|
|
635
|
+
return opts.encoder.decode(storedPromise.value.data);
|
|
636
|
+
case "REJECTED":
|
|
637
|
+
throw opts.encoder.decode(storedPromise.value.data);
|
|
638
|
+
case "REJECTED_CANCELED":
|
|
639
|
+
throw new errors_1.ResonateError("Resonate function canceled", errors_1.ErrorCodes.CANCELED, opts.encoder.decode(storedPromise.value.data));
|
|
640
|
+
case "REJECTED_TIMEDOUT":
|
|
641
|
+
throw new errors_1.ResonateError(`Resonate function timedout at ${new Date(storedPromise.timeout).toISOString()}`, errors_1.ErrorCodes.TIMEDOUT);
|
|
642
|
+
}
|
|
643
|
+
// storedPromise.state === "PENDING"
|
|
644
|
+
try {
|
|
645
|
+
// Acquire the lock if necessary
|
|
646
|
+
if (opts.shouldLock) {
|
|
647
|
+
while (!(await acquireLock(id, eid, locksStore))) {
|
|
648
|
+
await (0, utils_1.sleep)(opts.pollFrequency);
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
let error;
|
|
652
|
+
let value;
|
|
653
|
+
// we need to hold on to a boolean to determine if the function was successful,
|
|
654
|
+
// we cannot rely on the value or error as these values could be undefined
|
|
655
|
+
let success = true;
|
|
656
|
+
try {
|
|
657
|
+
value = await (0, retry_1.runWithRetry)(async () => await func(ctx, ...args), async () => await ctx.onRetry(), opts.retryPolicy, storedPromise.timeout);
|
|
658
|
+
}
|
|
659
|
+
catch (e) {
|
|
660
|
+
// We need to capture the error to be able to reject the durable promise,
|
|
661
|
+
// after that we will then propagate this error by rejecting the result promise
|
|
662
|
+
error = e;
|
|
663
|
+
success = false;
|
|
664
|
+
}
|
|
665
|
+
finally {
|
|
666
|
+
// Resonate will implicitly await all the invocationHandles as the last
|
|
667
|
+
// thing it does with the context before it goes out of scope
|
|
668
|
+
await ctx.finalize();
|
|
669
|
+
}
|
|
670
|
+
if (ctx.root.aborted) {
|
|
671
|
+
throw new errors_1.ResonateError("Unrecoverable Error: Aborting", errors_1.ErrorCodes.ABORT, ctx.root.abortCause);
|
|
672
|
+
}
|
|
673
|
+
let completedPromiseRecord;
|
|
674
|
+
if (success) {
|
|
675
|
+
completedPromiseRecord = await promisesStore.resolve(id, idempotencyKey, false, storedPromise.value.headers, opts.encoder.encode(value));
|
|
676
|
+
}
|
|
677
|
+
else {
|
|
678
|
+
completedPromiseRecord = await promisesStore.reject(id, idempotencyKey, false, storedPromise.value.headers, opts.encoder.encode(error));
|
|
679
|
+
}
|
|
680
|
+
// Because of eventual consistency and recovery paths it is possible that we get a
|
|
681
|
+
// rejected promise even if we did call `resolve` on it or the other way around.
|
|
682
|
+
// What should never happen is that we get a "PENDING" promise
|
|
683
|
+
switch (completedPromiseRecord.state) {
|
|
684
|
+
case "RESOLVED":
|
|
685
|
+
return value;
|
|
686
|
+
case "REJECTED":
|
|
687
|
+
throw error;
|
|
688
|
+
case "REJECTED_CANCELED":
|
|
689
|
+
throw new errors_1.ResonateError("Resonate function canceled", errors_1.ErrorCodes.CANCELED, error);
|
|
690
|
+
case "REJECTED_TIMEDOUT":
|
|
691
|
+
throw new errors_1.ResonateError(`Resonate function timedout at ${new Date(completedPromiseRecord.timeout).toISOString()}`, errors_1.ErrorCodes.TIMEDOUT);
|
|
692
|
+
case "PENDING":
|
|
693
|
+
throw new Error("Unreachable");
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
catch (err) {
|
|
697
|
+
if (err instanceof errors_1.ResonateError && (err.code === errors_1.ErrorCodes.CANCELED || err.code === errors_1.ErrorCodes.TIMEDOUT)) {
|
|
698
|
+
// Cancel and timeout errors, just forward them
|
|
699
|
+
throw err;
|
|
700
|
+
}
|
|
701
|
+
else if (err instanceof errors_1.ResonateError && err.code !== errors_1.ErrorCodes.ABORT) {
|
|
702
|
+
// Any other instance of ResonateError we must abort the current execution.
|
|
703
|
+
ctx.abort(err);
|
|
704
|
+
throw new errors_1.ResonateError("Unrecoverable Error: Aborting", errors_1.ErrorCodes.ABORT, err);
|
|
705
|
+
}
|
|
706
|
+
else {
|
|
707
|
+
throw err;
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
finally {
|
|
711
|
+
// release lock if necessary
|
|
712
|
+
if (opts.shouldLock) {
|
|
713
|
+
await locksStore.release(id, eid);
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
};
|
|
747
717
|
//# sourceMappingURL=resonate.js.map
|
package/dist/resonate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resonate.js","sourceRoot":"","sources":["../lib/resonate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resonate.js","sourceRoot":"","sources":["../lib/resonate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@resonatehq/sdk",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "TypeScript SDK for Resonate",
|
|
5
5
|
"author": "Resonate Developers",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"dist"
|
|
19
19
|
],
|
|
20
20
|
"scripts": {
|
|
21
|
-
"test": "jest --config jest.config.js",
|
|
21
|
+
"test": "jest --config jest.config.js",
|
|
22
22
|
"build": "tsc --build tsconfig.build.json",
|
|
23
23
|
"lint": "eslint .",
|
|
24
24
|
"lint:fix": "eslint . --fix",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"typedoc": "^0.25.7",
|
|
48
48
|
"typedoc-material-theme": "^1.0.2",
|
|
49
49
|
"typescript": "^5.2.2"
|
|
50
|
-
},
|
|
50
|
+
},
|
|
51
51
|
"engines": {
|
|
52
52
|
"node": ">= 18"
|
|
53
53
|
}
|