@rotorsoft/act-tck 1.27.7 → 1.27.8
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/.tsbuildinfo +1 -1
- package/dist/@types/store-tck.d.ts.map +1 -1
- package/dist/index.cjs +20 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +20 -2
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -2322,7 +2322,7 @@ var runStoreTck = (options) => {
|
|
|
2322
2322
|
expect8(again.find((l) => l.stream === ctl)).toBeDefined();
|
|
2323
2323
|
expect8(again.find((l) => l.stream === s)).toBeUndefined();
|
|
2324
2324
|
});
|
|
2325
|
-
it7("holds the watermark and resets retry on
|
|
2325
|
+
it7("holds the watermark and resets retry on an explicit-defer due lease (retry: -1)", async () => {
|
|
2326
2326
|
const s = `ackdefer-past-${uid()}`;
|
|
2327
2327
|
await store.subscribe([{ stream: s }]);
|
|
2328
2328
|
await store.commit(
|
|
@@ -2332,7 +2332,7 @@ var runStoreTck = (options) => {
|
|
|
2332
2332
|
);
|
|
2333
2333
|
const leased = await store.claim(100, 100, `w-${uid()}`, 1e5);
|
|
2334
2334
|
const mine = leased.find((l) => l.stream === s);
|
|
2335
|
-
await store.ack([{ ...mine, due: Date.now() - 1e3 }]);
|
|
2335
|
+
await store.ack([{ ...mine, due: Date.now() - 1e3, retry: -1 }]);
|
|
2336
2336
|
const again = await store.claim(100, 100, `w-${uid()}`, 1e5);
|
|
2337
2337
|
const re = again.find((l) => l.stream === s);
|
|
2338
2338
|
expect8(re).toBeDefined();
|
|
@@ -2340,6 +2340,24 @@ var runStoreTck = (options) => {
|
|
|
2340
2340
|
expect8(re.retry).toBe(0);
|
|
2341
2341
|
await store.ack([{ ...re, at: 1e6 }]);
|
|
2342
2342
|
});
|
|
2343
|
+
it7("persists the lease's retry on a backoff-style due lease (#1262)", async () => {
|
|
2344
|
+
const s = `ackdefer-retry-${uid()}`;
|
|
2345
|
+
await store.subscribe([{ stream: s }]);
|
|
2346
|
+
await store.commit(
|
|
2347
|
+
s,
|
|
2348
|
+
[inc(1)],
|
|
2349
|
+
make_meta({ stream: s })
|
|
2350
|
+
);
|
|
2351
|
+
const leased = await store.claim(100, 100, `w-${uid()}`, 1e5);
|
|
2352
|
+
const mine = leased.find((l) => l.stream === s);
|
|
2353
|
+
await store.ack([{ ...mine, due: Date.now() - 1e3, retry: 3 }]);
|
|
2354
|
+
const again = await store.claim(100, 100, `w-${uid()}`, 1e5);
|
|
2355
|
+
const re = again.find((l) => l.stream === s);
|
|
2356
|
+
expect8(re).toBeDefined();
|
|
2357
|
+
expect8(re.at).toBe(mine.at);
|
|
2358
|
+
expect8(re.retry).toBe(4);
|
|
2359
|
+
await store.ack([{ ...re, at: 1e6 }]);
|
|
2360
|
+
});
|
|
2343
2361
|
it7("ignores due-marked entries from a non-holder", async () => {
|
|
2344
2362
|
const s = `ackdefer-owner-${uid()}`;
|
|
2345
2363
|
await store.subscribe([{ stream: s }]);
|