@convex-dev/workpool 0.4.6 → 0.4.7-alpha.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.
Files changed (49) hide show
  1. package/dist/component/_generated/api.d.ts +2 -0
  2. package/dist/component/_generated/api.d.ts.map +1 -1
  3. package/dist/component/_generated/api.js.map +1 -1
  4. package/dist/component/complete.d.ts.map +1 -1
  5. package/dist/component/complete.js +8 -7
  6. package/dist/component/complete.js.map +1 -1
  7. package/dist/component/danger.js +7 -7
  8. package/dist/component/danger.js.map +1 -1
  9. package/dist/component/future.d.ts +11 -0
  10. package/dist/component/future.d.ts.map +1 -0
  11. package/dist/component/future.js +21 -0
  12. package/dist/component/future.js.map +1 -0
  13. package/dist/component/kick.d.ts +3 -3
  14. package/dist/component/kick.d.ts.map +1 -1
  15. package/dist/component/kick.js +14 -16
  16. package/dist/component/kick.js.map +1 -1
  17. package/dist/component/lib.d.ts.map +1 -1
  18. package/dist/component/lib.js +13 -13
  19. package/dist/component/lib.js.map +1 -1
  20. package/dist/component/loop.d.ts +44 -1
  21. package/dist/component/loop.d.ts.map +1 -1
  22. package/dist/component/loop.js +171 -217
  23. package/dist/component/loop.js.map +1 -1
  24. package/dist/component/recovery.d.ts.map +1 -1
  25. package/dist/component/recovery.js +2 -2
  26. package/dist/component/recovery.js.map +1 -1
  27. package/dist/component/schema.d.ts.map +1 -1
  28. package/dist/component/schema.js +2 -1
  29. package/dist/component/schema.js.map +1 -1
  30. package/dist/component/worker.js +1 -1
  31. package/dist/component/worker.js.map +1 -1
  32. package/package.json +8 -12
  33. package/src/component/_generated/api.ts +2 -0
  34. package/src/component/complete.test.ts +13 -13
  35. package/src/component/complete.ts +13 -7
  36. package/src/component/danger.ts +7 -7
  37. package/src/component/future.ts +38 -0
  38. package/src/component/kick.test.ts +17 -20
  39. package/src/component/kick.ts +20 -17
  40. package/src/component/lib.test.ts +7 -7
  41. package/src/component/lib.ts +12 -15
  42. package/src/component/loop.test.ts +695 -1127
  43. package/src/component/loop.ts +212 -283
  44. package/src/component/recovery.test.ts +3 -3
  45. package/src/component/recovery.ts +5 -2
  46. package/src/component/schema.ts +2 -1
  47. package/src/component/stateMachine.test.ts +1246 -0
  48. package/src/component/stats.test.ts +4 -4
  49. package/src/component/worker.ts +1 -1
@@ -10,6 +10,7 @@ import type * as complete from "../complete.js";
10
10
  import type * as config from "../config.js";
11
11
  import type * as crons from "../crons.js";
12
12
  import type * as danger from "../danger.js";
13
+ import type * as future from "../future.js";
13
14
  import type * as kick from "../kick.js";
14
15
  import type * as lib from "../lib.js";
15
16
  import type * as logging from "../logging.js";
@@ -24,6 +25,7 @@ declare const fullApi: ApiFromModules<{
24
25
  config: typeof config;
25
26
  crons: typeof crons;
26
27
  danger: typeof danger;
28
+ future: typeof future;
27
29
  kick: typeof kick;
28
30
  lib: typeof lib;
29
31
  logging: typeof logging;
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,KAAK,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,IAAI,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,KAAK,GAAG,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,KAAK,IAAI,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAGvB,QAAA,MAAM,OAAO,EAAE,cAAc,CAAC;IAC5B,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,IAAI,EAAE,OAAO,IAAI,CAAC;IAClB,GAAG,EAAE,OAAO,GAAG,CAAC;IAChB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,IAAI,EAAE,OAAO,IAAI,CAAC;IAClB,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,MAAM,EAAE,OAAO,MAAM,CAAC;CACvB,CAAiB,CAAC;AAEnB;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,EAAE,SAAS,CACzB,OAAO,OAAO,EACd,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,CACjB,CAAC;AAElB;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,CAC9B,OAAO,OAAO,EACd,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC,CACnB,CAAC;AAElB,eAAO,MAAM,UAAU,EAAqC,EAAE,CAAC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,KAAK,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,IAAI,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,KAAK,GAAG,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,KAAK,IAAI,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAGvB,QAAA,MAAM,OAAO,EAAE,cAAc,CAAC;IAC5B,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,IAAI,EAAE,OAAO,IAAI,CAAC;IAClB,GAAG,EAAE,OAAO,GAAG,CAAC;IAChB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,IAAI,EAAE,OAAO,IAAI,CAAC;IAClB,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,MAAM,EAAE,OAAO,MAAM,CAAC;CACvB,CAAiB,CAAC;AAEnB;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,EAAE,SAAS,CACzB,OAAO,OAAO,EACd,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,CACjB,CAAC;AAElB;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,EAAE,SAAS,CAC9B,OAAO,OAAO,EACd,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC,CACnB,CAAC;AAElB,eAAO,MAAM,UAAU,EAAqC,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB;;;;;;;GAOG;AAoBH,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,OAAO,GAaR,MAAa,CAAC;AAEnB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,GAAG,GAGZ,MAAa,CAAC;AAElB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAGjB,MAAa,CAAC;AAElB,MAAM,CAAC,MAAM,UAAU,GAAG,iBAAiB,EAAmB,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB;;;;;;;GAOG;AAqBH,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,OAAO,GAcR,MAAa,CAAC;AAEnB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,GAAG,GAGZ,MAAa,CAAC;AAElB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAGjB,MAAa,CAAC;AAElB,MAAM,CAAC,MAAM,UAAU,GAAG,iBAAiB,EAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"complete.d.ts","sourceRoot":"","sources":["../../src/component/complete.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,KAAK,EAAK,MAAM,eAAe,CAAC;AAG7D,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAO5E,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEzE,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAUhB,CAAC;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,KAAK,CAAC,OAAO,YAAY,CAAC,iBAkLjC;AASD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;iBAGnB,CAAC"}
1
+ {"version":3,"file":"complete.d.ts","sourceRoot":"","sources":["../../src/component/complete.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,KAAK,EAAK,MAAM,eAAe,CAAC;AAG7D,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAY5E,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEzE,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAUhB,CAAC;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,KAAK,CAAC,OAAO,YAAY,CAAC,iBAmLjC;AASD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;iBAGnB,CAAC"}
@@ -3,7 +3,7 @@ import { internal } from "./_generated/api.js";
3
3
  import { internalMutation } from "./_generated/server.js";
4
4
  import { kickMainLoop } from "./kick.js";
5
5
  import { createLogger } from "./logging.js";
6
- import { vResult } from "./shared.js";
6
+ import { getCurrentSegment, vResult, } from "./shared.js";
7
7
  import { recordCompleted } from "./stats.js";
8
8
  import { assert } from "convex-helpers";
9
9
  const completeArgs = v.object({
@@ -24,7 +24,7 @@ export async function completeHandler(ctx, args) {
24
24
  }
25
25
  const pendingCompletions = [];
26
26
  const jobAndWorks = (await Promise.all(args.jobs.map(async (job) => {
27
- const work = await ctx.db.get(job.workId);
27
+ const work = await ctx.db.get("work", job.workId);
28
28
  if (!work) {
29
29
  console.warn(`[complete] ${job.workId} is done, but its work is gone`);
30
30
  return null;
@@ -71,7 +71,7 @@ export async function completeHandler(ctx, args) {
71
71
  assert(ourBatch);
72
72
  await Promise.all(ourBatch.map(async ({ work, job }) => {
73
73
  work.attempts++;
74
- await ctx.db.patch(work._id, { attempts: work.attempts });
74
+ await ctx.db.patch("work", work._id, { attempts: work.attempts });
75
75
  const pendingCompletion = await ctx.db
76
76
  .query("pendingCompletion")
77
77
  .withIndex("workId", (q) => q.eq("workId", job.workId))
@@ -91,7 +91,7 @@ export async function completeHandler(ctx, args) {
91
91
  // Retrieve large context if stored separately
92
92
  let context = work.onComplete.context;
93
93
  if (context === undefined && work.payloadId) {
94
- const payload = await ctx.db.get(work.payloadId);
94
+ const payload = await ctx.db.get("payload", work.payloadId);
95
95
  if (payload) {
96
96
  context = payload.context;
97
97
  }
@@ -125,10 +125,10 @@ export async function completeHandler(ctx, args) {
125
125
  // Clean up any large data that was stored separately.
126
126
  // TODO: consider async deletion in the future to avoid bandwidth limits.
127
127
  if (work.payloadId) {
128
- await ctx.db.delete(work.payloadId);
128
+ await ctx.db.delete("payload", work.payloadId);
129
129
  }
130
130
  // This is the terminating state for work.
131
- await ctx.db.delete(job.workId);
131
+ await ctx.db.delete("work", job.workId);
132
132
  }
133
133
  if (job.runResult.kind !== "canceled") {
134
134
  pendingCompletions.push({
@@ -139,7 +139,8 @@ export async function completeHandler(ctx, args) {
139
139
  }
140
140
  }));
141
141
  if (pendingCompletions.length > 0) {
142
- const segment = await kickMainLoop(ctx, "complete");
142
+ await kickMainLoop(ctx, "complete");
143
+ const segment = getCurrentSegment();
143
144
  await Promise.all(pendingCompletions.map((completion) => ctx.db.insert("pendingCompletion", {
144
145
  ...completion,
145
146
  segment,
@@ -1 +1 @@
1
- {"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/component/complete.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/component/complete.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ export const clearPending = internalMutation({
18
18
  .withIndex("by_creation_time", (q) => q.lte("_creationTime", time))
19
19
  .order("desc")) {
20
20
  i++;
21
- const work = await ctx.db.get(entry.workId);
21
+ const work = await ctx.db.get("work", entry.workId);
22
22
  totalBytes +=
23
23
  getConvexSize(entry) + getConvexSize(work) + (work?.payloadSize ?? 0);
24
24
  if (i > MAX_ROWS_READ || totalBytes > MAX_BYTES_READ) {
@@ -27,7 +27,7 @@ export const clearPending = internalMutation({
27
27
  console.log(`Continuing after ${i} entries, ${totalBytes} bytes`);
28
28
  break;
29
29
  }
30
- await ctx.db.delete(entry._id);
30
+ await ctx.db.delete("pendingStart", entry._id);
31
31
  if (work) {
32
32
  // Clean up any large data stored separately
33
33
  if (work.payloadId) {
@@ -85,17 +85,17 @@ export const clearOldWork = internalMutation({
85
85
  break;
86
86
  }
87
87
  if (pendingStart) {
88
- await ctx.db.delete(pendingStart._id);
88
+ await ctx.db.delete("pendingStart", pendingStart._id);
89
89
  }
90
90
  if (pendingCompletion) {
91
- await ctx.db.delete(pendingCompletion._id);
91
+ await ctx.db.delete("pendingCompletion", pendingCompletion._id);
92
92
  }
93
93
  if (pendingCancelation) {
94
- await ctx.db.delete(pendingCancelation._id);
94
+ await ctx.db.delete("pendingCancelation", pendingCancelation._id);
95
95
  }
96
96
  // Clean up any large data stored separately
97
97
  if (entry.payloadId) {
98
- await ctx.db.delete(entry.payloadId);
98
+ await ctx.db.delete("payload", entry.payloadId);
99
99
  }
100
100
  console.debug(`cleared ${entry.fnName}: ${entry.fnArgs} (${Object.entries({
101
101
  pendingStart,
@@ -105,7 +105,7 @@ export const clearOldWork = internalMutation({
105
105
  .filter(([_, v]) => v !== null)
106
106
  .map(([name]) => name)
107
107
  .join(", ")})`);
108
- await ctx.db.delete(entry._id);
108
+ await ctx.db.delete("work", entry._id);
109
109
  }
110
110
  if (hasMore) {
111
111
  await ctx.scheduler.runAfter(0, internal.danger.clearOldWork, {
@@ -1 +1 @@
1
- {"version":3,"file":"danger.js","sourceRoot":"","sources":["../../src/component/danger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"danger.js","sourceRoot":"","sources":["../../src/component/danger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { type FunctionReference, type FunctionReturnType, type OptionalRestArgs } from "convex/server";
2
+ /**
3
+ * Run a query without creating a read dependency. Concurrent writes to the
4
+ * data the query reads will NOT cause the calling mutation to retry via OCC.
5
+ *
6
+ * Tradeoff: a concurrent transaction that hasn't yet committed at snapshot
7
+ * time may insert data this query won't see. If missing such inserts could
8
+ * break correctness, use ctx.runQuery (which takes a dependency) instead.
9
+ */
10
+ export declare function runSnapshotQuery<Query extends FunctionReference<"query", "public" | "internal">>(query: Query, ...args: OptionalRestArgs<Query>): Promise<FunctionReturnType<Query>>;
11
+ //# sourceMappingURL=future.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"future.d.ts","sourceRoot":"","sources":["../../src/component/future.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EAEtB,MAAM,eAAe,CAAC;AAOvB;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,SAAS,iBAAiB,CAAC,OAAO,EAAE,QAAQ,GAAG,UAAU,CAAC,EAE/D,KAAK,EAAE,KAAK,EACZ,GAAG,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAC/B,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAYpC"}
@@ -0,0 +1,21 @@
1
+ import { getFunctionAddress, } from "convex/server";
2
+ import { convexToJson, jsonToConvex } from "convex/values";
3
+ /**
4
+ * Run a query without creating a read dependency. Concurrent writes to the
5
+ * data the query reads will NOT cause the calling mutation to retry via OCC.
6
+ *
7
+ * Tradeoff: a concurrent transaction that hasn't yet committed at snapshot
8
+ * time may insert data this query won't see. If missing such inserts could
9
+ * break correctness, use ctx.runQuery (which takes a dependency) instead.
10
+ */
11
+ export async function runSnapshotQuery(query, ...args) {
12
+ const queryArgs = (args[0] ?? {});
13
+ const syscallArgs = {
14
+ udfType: "snapshotQuery",
15
+ args: convexToJson(queryArgs),
16
+ ...getFunctionAddress(query),
17
+ };
18
+ const resultStr = await Convex.asyncSyscall("1.0/runUdf", JSON.stringify(syscallArgs));
19
+ return jsonToConvex(JSON.parse(resultStr));
20
+ }
21
+ //# sourceMappingURL=future.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"future.js","sourceRoot":"","sources":["../../src/component/future.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAM3D;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAGpC,KAAY,EACZ,GAAG,IAA6B;IAEhC,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAA4B,CAAC;IAC7D,MAAM,WAAW,GAAG;QAClB,OAAO,EAAE,eAAe;QACxB,IAAI,EAAE,YAAY,CAAC,SAAkB,CAAC;QACtC,GAAG,kBAAkB,CAAC,KAAK,CAAC;KAC7B,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,CACzC,YAAY,EACZ,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAC5B,CAAC;IACF,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAA8B,CAAC;AAC1E,CAAC"}
@@ -1,9 +1,9 @@
1
1
  import { type MutationCtx } from "./_generated/server.js";
2
2
  import { type Config } from "./shared.js";
3
3
  /**
4
- * Called from outside the loop.
5
- * Returns the soonest segment to enqueue work for the main loop.
4
+ * Wakes the main loop if it isn't already running. No-ops when a wake-up
5
+ * wouldn't be productive (e.g. enqueue while saturated).
6
6
  */
7
- export declare function kickMainLoop(ctx: MutationCtx, source: "enqueue" | "cancel" | "complete" | "kick", config?: Config): Promise<bigint>;
7
+ export declare function kickMainLoop(ctx: MutationCtx, source: "enqueue" | "cancel" | "complete" | "kick", config?: Config): Promise<void>;
8
8
  export declare const forceKick: import("convex/server").RegisteredMutation<"internal", {}, Promise<void>>;
9
9
  //# sourceMappingURL=kick.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kick.d.ts","sourceRoot":"","sources":["../../src/component/kick.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAI5E,OAAO,EAEL,KAAK,MAAM,EAMZ,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,EAClD,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAuDjB;AAED,eAAO,MAAM,SAAS,2EAOpB,CAAC"}
1
+ {"version":3,"file":"kick.d.ts","sourceRoot":"","sources":["../../src/component/kick.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAI5E,OAAO,EAEL,KAAK,MAAM,EAKZ,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,EAClD,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CA2Df;AAED,eAAO,MAAM,SAAS,2EAOpB,CAAC"}
@@ -3,37 +3,36 @@ import { internalMutation } from "./_generated/server.js";
3
3
  import { getOrUpdateGlobals } from "./config.js";
4
4
  import { createLogger } from "./logging.js";
5
5
  import { INITIAL_STATE } from "./loop.js";
6
- import { boundScheduledTime, fromSegment, getCurrentSegment, getNextSegment, SECOND, toSegment, } from "./shared.js";
6
+ import { boundScheduledTime, fromSegment, getCurrentSegment, SECOND, toSegment, } from "./shared.js";
7
7
  /**
8
- * Called from outside the loop.
9
- * Returns the soonest segment to enqueue work for the main loop.
8
+ * Wakes the main loop if it isn't already running. No-ops when a wake-up
9
+ * wouldn't be productive (e.g. enqueue while saturated).
10
10
  */
11
11
  export async function kickMainLoop(ctx, source, config) {
12
12
  const globals = config ?? (await getOrUpdateGlobals(ctx, config));
13
13
  const console = createLogger(globals.logLevel);
14
14
  const runStatus = await getOrCreateRunStatus(ctx);
15
- const next = getNextSegment();
16
15
  // Only kick to run now if we're scheduled or idle.
17
16
  if (runStatus.state.kind === "running") {
18
17
  console.debug(`[${source}] main is actively running, so we don't need to kick it`);
19
- return next;
18
+ return;
20
19
  }
21
20
  // main is scheduled to run later, so we should cancel it and reschedule.
22
21
  if (runStatus.state.kind === "scheduled") {
23
22
  if (source === "enqueue" && runStatus.state.saturated) {
24
23
  console.debug(`[${source}] main is saturated, so we don't need to kick it`);
25
- return next;
24
+ return;
26
25
  }
27
26
  if (source === "complete" && !runStatus.state.saturated) {
28
27
  console.debug(`[${source}] main is not saturated, so kicking for completion isn't necessary`);
29
- return next;
28
+ return;
30
29
  }
31
30
  if (runStatus.state.segment <= toSegment(Date.now() + SECOND)) {
32
31
  console.debug(`[${source}] main is scheduled to run soon enough, so we don't need to kick it`);
33
- return next;
32
+ return;
34
33
  }
35
34
  console.debug(`[${source}] main is scheduled to run later, so reschedule it to run now`);
36
- const scheduled = await ctx.db.system.get(runStatus.state.scheduledId);
35
+ const scheduled = await ctx.db.system.get("_scheduled_functions", runStatus.state.scheduledId);
37
36
  if (scheduled && scheduled.state.kind === "pending") {
38
37
  await ctx.scheduler.cancel(runStatus.state.scheduledId);
39
38
  }
@@ -44,20 +43,19 @@ export async function kickMainLoop(ctx, source, config) {
44
43
  else if (runStatus.state.kind === "idle") {
45
44
  console.debug(`[${source}] main was idle, so run it now`);
46
45
  }
47
- await ctx.db.patch(runStatus._id, { state: { kind: "running" } });
48
- const current = getCurrentSegment();
49
- const scheduledTime = boundScheduledTime(fromSegment(current), console);
46
+ await ctx.db.patch("runStatus", runStatus._id, {
47
+ state: { kind: "running" },
48
+ });
49
+ const scheduledTime = boundScheduledTime(fromSegment(getCurrentSegment()), console);
50
50
  await ctx.scheduler.runAt(scheduledTime, internal.loop.main, {
51
51
  generation: runStatus.state.generation,
52
- segment: current,
53
52
  });
54
- return current;
55
53
  }
56
54
  export const forceKick = internalMutation({
57
55
  args: {},
58
56
  handler: async (ctx) => {
59
57
  const runStatus = await getOrCreateRunStatus(ctx);
60
- await ctx.db.delete(runStatus._id);
58
+ await ctx.db.delete("runStatus", runStatus._id);
61
59
  await kickMainLoop(ctx, "kick");
62
60
  },
63
61
  });
@@ -71,7 +69,7 @@ async function getOrCreateRunStatus(ctx) {
71
69
  generation: state?.generation ?? INITIAL_STATE.generation,
72
70
  },
73
71
  });
74
- runStatus = (await ctx.db.get(id));
72
+ runStatus = (await ctx.db.get("runStatus", id));
75
73
  if (!state) {
76
74
  await ctx.db.insert("internalState", INITIAL_STATE);
77
75
  }
@@ -1 +1 @@
1
- {"version":3,"file":"kick.js","sourceRoot":"","sources":["../../src/component/kick.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kick.js","sourceRoot":"","sources":["../../src/component/kick.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,KAAK,EAAE,EAAE,MAAM,2BAA2B,CAAC;AA8C9D,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;sDASlB,CAAC;AAiEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;MAcvB,CAAC;AAEH,eAAO,MAAM,MAAM;;;iBAgBjB,CAAC;AAGH,eAAO,MAAM,SAAS;;;;iBA0CpB,CAAC;AAEH,eAAO,MAAM,MAAM;QAKuC,EAAE,CAAC,MAAM,CAAC;;;;;;;;;;GADlE,CAAC;AAwBH,eAAO,MAAM,WAAW;;;;;;;;;;;MAQtB,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,KAAK,EAAE,EAAE,MAAM,2BAA2B,CAAC;AA8C9D,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;sDASlB,CAAC;AAgEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;MAYvB,CAAC;AAEH,eAAO,MAAM,MAAM;;;iBAgBjB,CAAC;AAGH,eAAO,MAAM,SAAS;;;;iBA0CpB,CAAC;AAEH,eAAO,MAAM,MAAM;QAKuC,EAAE,CAAC,MAAM,CAAC;;;;;;;;;;GADlE,CAAC;AAwBH,eAAO,MAAM,WAAW;;;;;;;;;;;MAQtB,CAAC"}
@@ -4,7 +4,7 @@ import {} from "./_generated/dataModel.js";
4
4
  import { mutation, query, } from "./_generated/server.js";
5
5
  import { kickMainLoop } from "./kick.js";
6
6
  import { createLogger, logLevel, } from "./logging.js";
7
- import { boundScheduledTime, vConfig, fnType, getNextSegment, max, vOnCompleteFnContext, retryBehavior, status as statusValidator, toSegment, } from "./shared.js";
7
+ import { boundScheduledTime, vConfig, fnType, getCurrentSegment, max, vOnCompleteFnContext, retryBehavior, status as statusValidator, toSegment, } from "./shared.js";
8
8
  import { recordEnqueued } from "./stats.js";
9
9
  import { getOrUpdateGlobals } from "./config.js";
10
10
  const INLINE_METADATA_THRESHOLD = 8_000; // 8KB threshold
@@ -30,11 +30,11 @@ export const enqueue = mutation({
30
30
  handler: async (ctx, { config, ...itemArgs }) => {
31
31
  const globals = await getOrUpdateGlobals(ctx, config);
32
32
  const console = createLogger(globals.logLevel);
33
- const kickSegment = await kickMainLoop(ctx, "enqueue", globals);
34
- return await enqueueHandler(ctx, console, kickSegment, itemArgs);
33
+ await kickMainLoop(ctx, "enqueue", globals);
34
+ return await enqueueHandler(ctx, console, itemArgs);
35
35
  },
36
36
  });
37
- async function enqueueHandler(ctx, console, kickSegment, { runAt, ...workArgs }) {
37
+ async function enqueueHandler(ctx, console, { runAt, ...workArgs }) {
38
38
  runAt = boundScheduledTime(runAt, console);
39
39
  const fnArgsSize = getConvexSize(workArgs.fnArgs);
40
40
  if (fnArgsSize > MAX_DOC_SIZE) {
@@ -78,7 +78,7 @@ async function enqueueHandler(ctx, console, kickSegment, { runAt, ...workArgs })
78
78
  const workId = await ctx.db.insert("work", workItem);
79
79
  await ctx.db.insert("pendingStart", {
80
80
  workId,
81
- segment: max(toSegment(runAt), kickSegment),
81
+ segment: max(toSegment(runAt), getCurrentSegment()),
82
82
  });
83
83
  recordEnqueued(console, { workId, fnName: workArgs.fnName, runAt });
84
84
  return workId;
@@ -92,8 +92,8 @@ export const enqueueBatch = mutation({
92
92
  handler: async (ctx, { config, items }) => {
93
93
  const globals = await getOrUpdateGlobals(ctx, config);
94
94
  const console = createLogger(globals.logLevel);
95
- const kickSegment = await kickMainLoop(ctx, "enqueue", globals);
96
- return Promise.all(items.map((item) => enqueueHandler(ctx, console, kickSegment, item)));
95
+ await kickMainLoop(ctx, "enqueue", globals);
96
+ return Promise.all(items.map((item) => enqueueHandler(ctx, console, item)));
97
97
  },
98
98
  });
99
99
  export const cancel = mutation({
@@ -105,10 +105,10 @@ export const cancel = mutation({
105
105
  const globals = await getOrUpdateGlobals(ctx, { logLevel });
106
106
  const shouldCancel = await shouldCancelWorkItem(ctx, id, globals.logLevel);
107
107
  if (shouldCancel) {
108
- const segment = await kickMainLoop(ctx, "cancel", globals);
108
+ await kickMainLoop(ctx, "cancel", globals);
109
109
  await ctx.db.insert("pendingCancelation", {
110
110
  workId: id,
111
- segment,
111
+ segment: getCurrentSegment(),
112
112
  });
113
113
  }
114
114
  },
@@ -130,10 +130,10 @@ export const cancelAll = mutation({
130
130
  .take(pageSize);
131
131
  const globals = await getOrUpdateGlobals(ctx, { logLevel });
132
132
  const shouldCancel = await Promise.all(pageOfWork.map(async ({ _id }) => shouldCancelWorkItem(ctx, _id, globals.logLevel)));
133
- let segment = getNextSegment();
134
133
  if (shouldCancel.some((c) => c)) {
135
- segment = await kickMainLoop(ctx, "cancel", globals);
134
+ await kickMainLoop(ctx, "cancel", globals);
136
135
  }
136
+ const segment = getCurrentSegment();
137
137
  await Promise.all(pageOfWork.map(({ _id }, index) => {
138
138
  if (shouldCancel[index]) {
139
139
  return ctx.db.insert("pendingCancelation", {
@@ -157,7 +157,7 @@ export const status = query({
157
157
  handler: statusHandler,
158
158
  });
159
159
  async function statusHandler(ctx, { id }) {
160
- const work = await ctx.db.get(id);
160
+ const work = await ctx.db.get("work", id);
161
161
  if (!work) {
162
162
  return { state: "finished" };
163
163
  }
@@ -188,7 +188,7 @@ export const statusBatch = query({
188
188
  async function shouldCancelWorkItem(ctx, workId, logLevel) {
189
189
  const console = createLogger(logLevel);
190
190
  // No-op if the work doesn't exist or has completed.
191
- const work = await ctx.db.get(workId);
191
+ const work = await ctx.db.get("work", workId);
192
192
  if (!work) {
193
193
  console.warn(`[cancel] work ${workId} doesn't exist`);
194
194
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,53 @@ export declare const RECOVERY_PERIOD_SEGMENTS: bigint;
4
4
  export declare const STATUS_COOLDOWN: number;
5
5
  export declare const COOLDOWN_CHECK_INTERVAL: number;
6
6
  export declare const INITIAL_STATE: WithoutSystemFields<Doc<"internalState">>;
7
+ /**
8
+ * Single query that returns everything the main loop needs to process.
9
+ */
10
+ export declare const getPending: import("convex/server").RegisteredQuery<"internal", {
11
+ maxParallelism: number;
12
+ completionCursor: bigint;
13
+ cancelationCursor: bigint;
14
+ incomingCursor: bigint;
15
+ runningCount: number;
16
+ }, Promise<{
17
+ completions: {
18
+ _id: import("convex/values").GenericId<"pendingCompletion">;
19
+ _creationTime: number;
20
+ workId: import("convex/values").GenericId<"work">;
21
+ retry: boolean;
22
+ segment: bigint;
23
+ runResult: {
24
+ kind: "success";
25
+ returnValue: any;
26
+ } | {
27
+ kind: "failed";
28
+ error: string;
29
+ } | {
30
+ kind: "canceled";
31
+ };
32
+ }[];
33
+ cancelations: {
34
+ _id: import("convex/values").GenericId<"pendingCancelation">;
35
+ _creationTime: number;
36
+ workId: import("convex/values").GenericId<"work">;
37
+ segment: bigint;
38
+ }[];
39
+ allStarts: {
40
+ _id: import("convex/values").GenericId<"pendingStart">;
41
+ _creationTime: number;
42
+ workId: import("convex/values").GenericId<"work">;
43
+ segment: bigint;
44
+ }[];
45
+ }>>;
7
46
  export declare const main: import("convex/server").RegisteredMutation<"internal", {
47
+ segment?: bigint | undefined;
8
48
  generation: bigint;
9
- segment: bigint;
10
49
  }, Promise<void>>;
50
+ /**
51
+ * @deprecated Forwarder for in-flight scheduled calls from before the
52
+ * upgrade. The scheduling logic has been merged into `main`.
53
+ */
11
54
  export declare const updateRunStatus: import("convex/server").RegisteredMutation<"internal", {
12
55
  generation: bigint;
13
56
  segment: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/component/loop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,KAAK,EAAE,GAAG,EAAM,MAAM,2BAA2B,CAAC;AA4BzD,eAAO,MAAM,wBAAwB,QAAwB,CAAC;AAC9D,eAAO,MAAM,eAAe,QAAa,CAAC;AAC1C,eAAO,MAAM,uBAAuB,QAAW,CAAC;AAEhD,eAAO,MAAM,aAAa,EAAE,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,CAanE,CAAC;AAGF,eAAO,MAAM,IAAI;;;iBAyEf,CAAC;AAEH,eAAO,MAAM,eAAe;;;iBAiJ1B,CAAC;AAuYH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,UAEvC"}
1
+ {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/component/loop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAIzD,OAAO,KAAK,EAAE,GAAG,EAAM,MAAM,2BAA2B,CAAC;AAgCzD,eAAO,MAAM,wBAAwB,QAAwB,CAAC;AAC9D,eAAO,MAAM,eAAe,QAAa,CAAC;AAC1C,eAAO,MAAM,uBAAuB,QAAW,CAAC;AAMhD,eAAO,MAAM,aAAa,EAAE,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,CAanE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDrB,CAAC;AAGH,eAAO,MAAM,IAAI;;;iBA2Lf,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,eAAe;;;iBAK1B,CAAC;AAqRH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,UAEvC"}