@yieldstar/sqlite-runtime 0.5.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/bun.js +15 -17
- package/dist/dao/effect-waiters-dao.d.ts +19 -0
- package/dist/dao/effect-waiters-dao.d.ts.map +1 -0
- package/dist/dao/effects-dao.d.ts +17 -0
- package/dist/dao/effects-dao.d.ts.map +1 -0
- package/dist/dao/executions-dao.d.ts +24 -0
- package/dist/dao/executions-dao.d.ts.map +1 -0
- package/dist/dao/start-requests-dao.d.ts +15 -0
- package/dist/dao/start-requests-dao.d.ts.map +1 -0
- package/dist/dao/step-response-dao.d.ts +1 -0
- package/dist/dao/step-response-dao.d.ts.map +1 -1
- package/dist/dao/store-waiters-dao.d.ts +26 -0
- package/dist/dao/store-waiters-dao.d.ts.map +1 -0
- package/dist/index-083bmj5k.js +800 -0
- package/dist/index-4kybaxga.js +798 -0
- package/dist/index-a8thbaee.js +718 -0
- package/dist/index-ag93sv33.js +664 -0
- package/dist/index-eabcgmaa.js +996 -0
- package/dist/index-ekggxe8v.js +987 -0
- package/dist/index-gjfs8rn6.js +997 -0
- package/dist/index-h3h7r4b6.js +981 -0
- package/dist/index-ma984fze.js +718 -0
- package/dist/index-ne28djfn.js +718 -0
- package/dist/index-t60e4kvz.js +988 -0
- package/dist/index-v6rn0pr6.js +664 -0
- package/dist/index-wx6vk994.js +669 -0
- package/dist/index.d.ts +3 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -13
- package/dist/node.js +15 -17
- package/dist/sqlite-effect.d.ts +30 -0
- package/dist/sqlite-effect.d.ts.map +1 -0
- package/dist/sqlite-execution.d.ts +55 -0
- package/dist/sqlite-execution.d.ts.map +1 -0
- package/dist/sqlite-heap.d.ts +12 -4
- package/dist/sqlite-heap.d.ts.map +1 -1
- package/dist/sqlite-runtime.d.ts +22 -0
- package/dist/sqlite-runtime.d.ts.map +1 -0
- package/dist/sqlite-store.d.ts +31 -25
- package/dist/sqlite-store.d.ts.map +1 -1
- package/dist/sqlite-transaction.d.ts +9 -0
- package/dist/sqlite-transaction.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/dao/effect-waiters-dao.ts +63 -0
- package/src/dao/effects-dao.ts +123 -0
- package/src/dao/executions-dao.ts +199 -0
- package/src/dao/start-requests-dao.ts +72 -0
- package/src/dao/step-response-dao.ts +16 -1
- package/src/dao/store-waiters-dao.ts +92 -0
- package/src/index.ts +6 -4
- package/src/sqlite-effect.ts +99 -0
- package/src/sqlite-execution.ts +242 -0
- package/src/sqlite-heap.ts +64 -12
- package/src/sqlite-runtime.ts +36 -0
- package/src/sqlite-store.ts +184 -520
- package/src/sqlite-transaction.ts +19 -0
- package/dist/dao/task-queue-dao.d.ts +0 -21
- package/dist/dao/task-queue-dao.d.ts.map +0 -1
- package/dist/dao/timers-dao.d.ts +0 -22
- package/dist/dao/timers-dao.d.ts.map +0 -1
- package/dist/index-4vq70w0r.js +0 -796
- package/dist/index-s8wqgfwt.js +0 -19
- package/dist/index-x891hxwg.js +0 -796
- package/dist/node-driver.d.ts +0 -10
- package/dist/node-driver.d.ts.map +0 -1
- package/dist/sqlite-event-loop.d.ts +0 -18
- package/dist/sqlite-event-loop.d.ts.map +0 -1
- package/dist/sqlite-scheduler.d.ts +0 -13
- package/dist/sqlite-scheduler.d.ts.map +0 -1
- package/dist/sqlite-store.test.d.ts +0 -2
- package/dist/sqlite-store.test.d.ts.map +0 -1
- package/dist/sqlite-task-queue.d.ts +0 -26
- package/dist/sqlite-task-queue.d.ts.map +0 -1
- package/dist/sqlite-timers.d.ts +0 -18
- package/dist/sqlite-timers.d.ts.map +0 -1
- package/src/dao/task-queue-dao.ts +0 -79
- package/src/dao/timers-dao.ts +0 -81
- package/src/sqlite-event-loop.ts +0 -41
- package/src/sqlite-scheduler.ts +0 -24
- package/src/sqlite-task-queue.ts +0 -64
- package/src/sqlite-timers.ts +0 -40
- package/tsconfig.tsbuildinfo +0 -1
- /package/dist/{index-h7bm9xg4.js → index-dapqh99v.js} +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { SqliteDriver } from "./sqlite-driver";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Runs `fn` in one `BEGIN IMMEDIATE … COMMIT` transaction, rolling back if it
|
|
5
|
+
* throws. `fn` is synchronous so no other operation on this connection can
|
|
6
|
+
* interleave, and IMMEDIATE takes the write lock up front so concurrent
|
|
7
|
+
* processes sharing the database file serialize on it.
|
|
8
|
+
*/
|
|
9
|
+
export function runTransaction<R>(db: SqliteDriver, fn: () => R): R {
|
|
10
|
+
db.run("BEGIN IMMEDIATE");
|
|
11
|
+
try {
|
|
12
|
+
const result = fn();
|
|
13
|
+
db.run("COMMIT");
|
|
14
|
+
return result;
|
|
15
|
+
} catch (err) {
|
|
16
|
+
db.run("ROLLBACK");
|
|
17
|
+
throw err;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import type { WorkflowEvent } from "@yieldstar/core";
|
|
2
|
-
import type { SqliteDriver } from "../sqlite-driver";
|
|
3
|
-
declare class TaskRow {
|
|
4
|
-
task_id: number;
|
|
5
|
-
workflow_id: string;
|
|
6
|
-
execution_id: string;
|
|
7
|
-
params?: string;
|
|
8
|
-
context?: string;
|
|
9
|
-
}
|
|
10
|
-
export declare class TaskQueueDao {
|
|
11
|
-
private db;
|
|
12
|
-
constructor(db: SqliteDriver);
|
|
13
|
-
setupDb(): void;
|
|
14
|
-
insertTask(event: WorkflowEvent): void;
|
|
15
|
-
getNextTask(): TaskRow | undefined;
|
|
16
|
-
updateTaskVisibility(taskId: number, visibleFrom: number): void;
|
|
17
|
-
deleteTaskById(id: number): void;
|
|
18
|
-
getTaskCount(): number;
|
|
19
|
-
}
|
|
20
|
-
export {};
|
|
21
|
-
//# sourceMappingURL=task-queue-dao.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-queue-dao.d.ts","sourceRoot":"","sources":["../../src/dao/task-queue-dao.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,cAAM,OAAO;IACX,OAAO,EAAG,MAAM,CAAC;IACjB,WAAW,EAAG,MAAM,CAAC;IACrB,YAAY,EAAG,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAe;gBAEb,EAAE,EAAE,YAAY;IAI5B,OAAO;IAaP,UAAU,CAAC,KAAK,EAAE,aAAa;IAgB/B,WAAW;IAOX,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAOxD,cAAc,CAAC,EAAE,EAAE,MAAM;IAOzB,YAAY;CAMb"}
|
package/dist/dao/timers-dao.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type { WorkflowEvent } from "@yieldstar/core";
|
|
2
|
-
import type { SqliteDriver } from "../sqlite-driver";
|
|
3
|
-
declare class TimerRow {
|
|
4
|
-
id: string;
|
|
5
|
-
delay: number;
|
|
6
|
-
workflow_id: string;
|
|
7
|
-
execution_id: string;
|
|
8
|
-
created_at: number;
|
|
9
|
-
params?: string;
|
|
10
|
-
context?: string;
|
|
11
|
-
}
|
|
12
|
-
export declare class TimersDao {
|
|
13
|
-
private db;
|
|
14
|
-
constructor(db: SqliteDriver);
|
|
15
|
-
private setupDb;
|
|
16
|
-
getExpiredTimers(): TimerRow[];
|
|
17
|
-
getTaskCount(): number;
|
|
18
|
-
insertTimer(event: WorkflowEvent, delay: number): void;
|
|
19
|
-
deleteTimerById(id: string): void;
|
|
20
|
-
}
|
|
21
|
-
export {};
|
|
22
|
-
//# sourceMappingURL=timers-dao.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"timers-dao.d.ts","sourceRoot":"","sources":["../../src/dao/timers-dao.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,cAAM,QAAQ;IACZ,EAAE,EAAG,MAAM,CAAC;IACZ,KAAK,EAAG,MAAM,CAAC;IACf,WAAW,EAAG,MAAM,CAAC;IACrB,YAAY,EAAG,MAAM,CAAC;IACtB,UAAU,EAAG,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD,qBAAa,SAAS;IACpB,OAAO,CAAC,EAAE,CAAe;gBAEb,EAAE,EAAE,YAAY;IAK5B,OAAO,CAAC,OAAO;IAcf,gBAAgB,IAAI,QAAQ,EAAE;IAU9B,YAAY;IAWZ,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM;IAgB/C,eAAe,CAAC,EAAE,EAAE,MAAM;CAI3B"}
|