@dbos-inc/dbos-sdk 2.9.2-preview → 2.9.17-preview
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/src/client.d.ts +12 -1
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/client.js +31 -7
- package/dist/src/client.js.map +1 -1
- package/dist/src/conductor/conductor.d.ts.map +1 -1
- package/dist/src/conductor/conductor.js +26 -17
- package/dist/src/conductor/conductor.js.map +1 -1
- package/dist/src/conductor/protocol.d.ts +21 -5
- package/dist/src/conductor/protocol.d.ts.map +1 -1
- package/dist/src/conductor/protocol.js +25 -6
- package/dist/src/conductor/protocol.js.map +1 -1
- package/dist/src/dbos-executor.d.ts +26 -16
- package/dist/src/dbos-executor.d.ts.map +1 -1
- package/dist/src/dbos-executor.js +91 -111
- package/dist/src/dbos-executor.js.map +1 -1
- package/dist/src/dbos-runtime/cli.d.ts.map +1 -1
- package/dist/src/dbos-runtime/cli.js +89 -15
- package/dist/src/dbos-runtime/cli.js.map +1 -1
- package/dist/src/dbos-runtime/config.js +1 -1
- package/dist/src/dbos-runtime/config.js.map +1 -1
- package/dist/src/dbos-runtime/workflow_management.d.ts +13 -20
- package/dist/src/dbos-runtime/workflow_management.d.ts.map +1 -1
- package/dist/src/dbos-runtime/workflow_management.js +90 -120
- package/dist/src/dbos-runtime/workflow_management.js.map +1 -1
- package/dist/src/dbos.d.ts +42 -11
- package/dist/src/dbos.d.ts.map +1 -1
- package/dist/src/dbos.js +82 -31
- package/dist/src/dbos.js.map +1 -1
- package/dist/src/error.d.ts +18 -6
- package/dist/src/error.d.ts.map +1 -1
- package/dist/src/error.js +41 -16
- package/dist/src/error.js.map +1 -1
- package/dist/src/eventreceiver.d.ts +17 -8
- package/dist/src/eventreceiver.d.ts.map +1 -1
- package/dist/src/httpServer/handler.d.ts.map +1 -1
- package/dist/src/httpServer/handler.js +2 -1
- package/dist/src/httpServer/handler.js.map +1 -1
- package/dist/src/httpServer/middleware.js +2 -2
- package/dist/src/httpServer/middleware.js.map +1 -1
- package/dist/src/httpServer/server.d.ts +6 -0
- package/dist/src/httpServer/server.d.ts.map +1 -1
- package/dist/src/httpServer/server.js +71 -7
- package/dist/src/httpServer/server.js.map +1 -1
- package/dist/src/scheduler/scheduler.js +1 -1
- package/dist/src/scheduler/scheduler.js.map +1 -1
- package/dist/src/system_database.d.ts +79 -67
- package/dist/src/system_database.d.ts.map +1 -1
- package/dist/src/system_database.js +766 -398
- package/dist/src/system_database.js.map +1 -1
- package/dist/src/testing/testing_runtime.d.ts.map +1 -1
- package/dist/src/testing/testing_runtime.js +2 -1
- package/dist/src/testing/testing_runtime.js.map +1 -1
- package/dist/src/utils.d.ts +1 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +3 -1
- package/dist/src/utils.js.map +1 -1
- package/dist/src/wfqueue.d.ts.map +1 -1
- package/dist/src/wfqueue.js +1 -2
- package/dist/src/wfqueue.js.map +1 -1
- package/dist/src/workflow.d.ts +24 -6
- package/dist/src/workflow.d.ts.map +1 -1
- package/dist/src/workflow.js +7 -38
- package/dist/src/workflow.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -3
@@ -1,6 +1,6 @@
|
|
1
1
|
import { DBOSConfigInternal } from './dbos-executor';
|
2
2
|
import { Pool, PoolClient, PoolConfig } from 'pg';
|
3
|
-
import { GetPendingWorkflowsOutput, GetQueuedWorkflowsInput, GetWorkflowQueueInput, GetWorkflowQueueOutput, GetWorkflowsInput,
|
3
|
+
import { GetPendingWorkflowsOutput, GetQueuedWorkflowsInput, GetWorkflowQueueInput, GetWorkflowQueueOutput, GetWorkflowsInput, StatusString } from './workflow';
|
4
4
|
import { operation_outputs } from '../schemas/system_db_schema';
|
5
5
|
import { HTTPRequest } from './context';
|
6
6
|
import { GlobalLogger as Logger } from './telemetry/logs';
|
@@ -8,9 +8,10 @@ import { Knex } from 'knex';
|
|
8
8
|
import { WorkflowQueue } from './wfqueue';
|
9
9
|
import { DBOSEventReceiverState } from './eventreceiver';
|
10
10
|
export interface SystemDatabaseStoredResult {
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
output?: string | null;
|
12
|
+
error?: string | null;
|
13
|
+
cancelled?: boolean;
|
14
|
+
childWorkflowID?: string | null;
|
14
15
|
functionName?: string;
|
15
16
|
}
|
16
17
|
export declare const DBOS_FUNCNAME_SEND = "DBOS.send";
|
@@ -33,38 +34,39 @@ export declare const DBOS_FUNCNAME_GETSTATUS = "getStatus";
|
|
33
34
|
export interface SystemDatabase {
|
34
35
|
init(): Promise<void>;
|
35
36
|
destroy(): Promise<void>;
|
36
|
-
initWorkflowStatus
|
37
|
-
|
37
|
+
initWorkflowStatus(initStatus: WorkflowStatusInternal, serializedArgs: string, maxRetries?: number): Promise<{
|
38
|
+
serializedInputs: string;
|
38
39
|
status: string;
|
39
40
|
}>;
|
40
41
|
recordWorkflowOutput(workflowID: string, status: WorkflowStatusInternal): Promise<void>;
|
41
42
|
recordWorkflowError(workflowID: string, status: WorkflowStatusInternal): Promise<void>;
|
42
43
|
getPendingWorkflows(executorID: string, appVersion: string): Promise<GetPendingWorkflowsOutput[]>;
|
43
|
-
getWorkflowInputs
|
44
|
-
|
45
|
-
res?: SystemDatabaseStoredResult;
|
46
|
-
}>;
|
44
|
+
getWorkflowInputs(workflowID: string): Promise<string | null>;
|
45
|
+
getOperationResultAndThrowIfCancelled(workflowID: string, functionID: number): Promise<SystemDatabaseStoredResult | undefined>;
|
47
46
|
getAllOperationResults(workflowID: string): Promise<operation_outputs[]>;
|
48
|
-
recordOperationResult(workflowID: string, functionID: number,
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
getWorkflowStatusInternal(workflowID: string, callerID?: string, callerFN?: number): Promise<WorkflowStatusInternal | null>;
|
56
|
-
awaitWorkflowResult(workflowID: string, timeoutms?: number): Promise<SystemDatabaseStoredResult | undefined>;
|
47
|
+
recordOperationResult(workflowID: string, functionID: number, functionName: string, checkConflict: boolean, options?: {
|
48
|
+
childWorkflowID?: string | null;
|
49
|
+
output?: string | null;
|
50
|
+
error?: string | null;
|
51
|
+
}): Promise<void>;
|
52
|
+
getWorkflowStatus(workflowID: string, callerID?: string, callerFN?: number): Promise<WorkflowStatusInternal | null>;
|
53
|
+
awaitWorkflowResult(workflowID: string, timeoutSeconds?: number, callerID?: string, timerFuncID?: number): Promise<SystemDatabaseStoredResult | undefined>;
|
57
54
|
setWorkflowStatus(workflowID: string, status: (typeof StatusString)[keyof typeof StatusString], resetRecoveryAttempts: boolean): Promise<void>;
|
58
55
|
cancelWorkflow(workflowID: string): Promise<void>;
|
59
56
|
resumeWorkflow(workflowID: string): Promise<void>;
|
60
|
-
|
61
|
-
|
62
|
-
|
57
|
+
forkWorkflow(workflowID: string, startStep: number, options?: {
|
58
|
+
newWorkflowID?: string;
|
59
|
+
applicationVersion?: string;
|
60
|
+
}): Promise<string>;
|
61
|
+
getMaxFunctionID(workflowID: string): Promise<number>;
|
62
|
+
checkIfCanceled(workflowID: string): Promise<void>;
|
63
|
+
registerRunningWorkflow(workflowID: string, workflowPromise: Promise<unknown>): void;
|
64
|
+
awaitRunningWorkflows(): Promise<void>;
|
65
|
+
enqueueWorkflow(workflowID: string, queueName: string): Promise<void>;
|
66
|
+
clearQueueAssignment(workflowID: string): Promise<boolean>;
|
67
|
+
dequeueWorkflow(workflowID: string, queue: WorkflowQueue): Promise<void>;
|
63
68
|
findAndMarkStartableWorkflows(queue: WorkflowQueue, executorID: string, appVersion: string): Promise<string[]>;
|
64
|
-
durableSleepms(workflowID: string, functionID: number, duration: number): Promise<
|
65
|
-
promise: Promise<void>;
|
66
|
-
cancel: () => void;
|
67
|
-
}>;
|
69
|
+
durableSleepms(workflowID: string, functionID: number, duration: number): Promise<void>;
|
68
70
|
send(workflowID: string, functionID: number, destinationID: string, message: string | null, topic?: string): Promise<void>;
|
69
71
|
recv(workflowID: string, functionID: number, timeoutFunctionID: number, topic?: string, timeoutSeconds?: number): Promise<string | null>;
|
70
72
|
setEvent(workflowID: string, functionID: number, key: string, value: string | null): Promise<void>;
|
@@ -75,8 +77,8 @@ export interface SystemDatabase {
|
|
75
77
|
}): Promise<string | null>;
|
76
78
|
getEventDispatchState(service: string, workflowFnName: string, key: string): Promise<DBOSEventReceiverState | undefined>;
|
77
79
|
upsertEventDispatchState(state: DBOSEventReceiverState): Promise<DBOSEventReceiverState>;
|
78
|
-
|
79
|
-
|
80
|
+
listWorkflows(input: GetWorkflowsInput): Promise<WorkflowStatusInternal[]>;
|
81
|
+
listQueuedWorkflows(input: GetQueuedWorkflowsInput): Promise<WorkflowStatusInternal[]>;
|
80
82
|
getWorkflowQueue(input: GetWorkflowQueueInput): Promise<GetWorkflowQueueOutput>;
|
81
83
|
}
|
82
84
|
export interface WorkflowStatusInternal {
|
@@ -89,6 +91,7 @@ export interface WorkflowStatusInternal {
|
|
89
91
|
authenticatedUser: string;
|
90
92
|
output: string | null;
|
91
93
|
error: string | null;
|
94
|
+
input?: string;
|
92
95
|
assumedRole: string;
|
93
96
|
authenticatedRoles: string[];
|
94
97
|
request: HTTPRequest;
|
@@ -97,14 +100,27 @@ export interface WorkflowStatusInternal {
|
|
97
100
|
applicationID: string;
|
98
101
|
createdAt: number;
|
99
102
|
updatedAt?: number;
|
100
|
-
maxRetries: number;
|
101
103
|
recoveryAttempts?: number;
|
102
104
|
}
|
103
105
|
export interface ExistenceCheck {
|
104
106
|
exists: boolean;
|
105
107
|
}
|
106
108
|
export declare function migrateSystemDatabase(systemPoolConfig: PoolConfig, logger: Logger): Promise<void>;
|
109
|
+
declare class NotificationMap<T> {
|
110
|
+
map: Map<string, Map<number, (event?: T) => void>>;
|
111
|
+
curCK: number;
|
112
|
+
registerCallback(key: string, cb: (event?: T) => void): {
|
113
|
+
key: string;
|
114
|
+
ck: number;
|
115
|
+
};
|
116
|
+
deregisterCallback(k: {
|
117
|
+
key: string;
|
118
|
+
ck: number;
|
119
|
+
}): void;
|
120
|
+
callCallbacks(key: string, event?: T): void;
|
121
|
+
}
|
107
122
|
export declare class PostgresSystemDatabase implements SystemDatabase {
|
123
|
+
#private;
|
108
124
|
readonly pgPoolConfig: PoolConfig;
|
109
125
|
readonly systemDatabaseName: string;
|
110
126
|
readonly logger: Logger;
|
@@ -113,41 +129,39 @@ export declare class PostgresSystemDatabase implements SystemDatabase {
|
|
113
129
|
readonly systemPoolConfig: PoolConfig;
|
114
130
|
readonly knexDB: Knex;
|
115
131
|
notificationsClient: PoolClient | null;
|
116
|
-
|
117
|
-
|
132
|
+
dbPollingIntervalResultMs: number;
|
133
|
+
dbPollingIntervalEventMs: number;
|
134
|
+
shouldUseDBNotifications: boolean;
|
135
|
+
readonly notificationsMap: NotificationMap<void>;
|
136
|
+
readonly workflowEventsMap: NotificationMap<void>;
|
137
|
+
readonly cancelWakeupMap: NotificationMap<void>;
|
138
|
+
readonly runningWorkflowMap: Map<string, Promise<unknown>>;
|
139
|
+
readonly workflowCancellationMap: Map<string, boolean>;
|
118
140
|
constructor(pgPoolConfig: PoolConfig, systemDatabaseName: string, logger: Logger, sysDbPoolSize?: number | undefined);
|
119
141
|
init(): Promise<void>;
|
120
142
|
destroy(): Promise<void>;
|
121
143
|
static dropSystemDB(dbosConfig: DBOSConfigInternal): Promise<void>;
|
122
|
-
initWorkflowStatus
|
123
|
-
|
144
|
+
initWorkflowStatus(initStatus: WorkflowStatusInternal, serializedInputs: string, maxRetries?: number): Promise<{
|
145
|
+
serializedInputs: string;
|
124
146
|
status: string;
|
125
147
|
}>;
|
126
|
-
recordWorkflowStatusChange(workflowID: string, status: (typeof StatusString)[keyof typeof StatusString], update: {
|
127
|
-
output?: string | null;
|
128
|
-
error?: string | null;
|
129
|
-
resetRecoveryAttempts?: boolean;
|
130
|
-
incrementRecoveryAttempts?: boolean;
|
131
|
-
}, client?: PoolClient): Promise<void>;
|
132
148
|
recordWorkflowOutput(workflowID: string, status: WorkflowStatusInternal): Promise<void>;
|
133
149
|
recordWorkflowError(workflowID: string, status: WorkflowStatusInternal): Promise<void>;
|
134
150
|
getPendingWorkflows(executorID: string, appVersion: string): Promise<GetPendingWorkflowsOutput[]>;
|
135
|
-
getWorkflowInputs
|
136
|
-
|
137
|
-
res?: SystemDatabaseStoredResult;
|
138
|
-
}>;
|
151
|
+
getWorkflowInputs(workflowID: string): Promise<string | null>;
|
152
|
+
getOperationResultAndThrowIfCancelled(workflowID: string, functionID: number): Promise<SystemDatabaseStoredResult | undefined>;
|
139
153
|
getAllOperationResults(workflowID: string): Promise<operation_outputs[]>;
|
140
|
-
recordOperationResult(workflowID: string, functionID: number,
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
154
|
+
recordOperationResult(workflowID: string, functionID: number, functionName: string, checkConflict: boolean, options?: {
|
155
|
+
childWorkflowID?: string | null;
|
156
|
+
output?: string | null;
|
157
|
+
error?: string | null;
|
158
|
+
}): Promise<void>;
|
159
|
+
getMaxFunctionID(workflowID: string): Promise<number>;
|
160
|
+
forkWorkflow(workflowID: string, startStep: number, options?: {
|
161
|
+
newWorkflowID?: string;
|
162
|
+
applicationVersion?: string;
|
163
|
+
}): Promise<string>;
|
164
|
+
durableSleepms(workflowID: string, functionID: number, durationMS: number): Promise<void>;
|
151
165
|
readonly nullTopic = "__null__topic__";
|
152
166
|
send(workflowID: string, functionID: number, destinationID: string, message: string | null, topic?: string): Promise<void>;
|
153
167
|
recv(workflowID: string, functionID: number, timeoutFunctionID: number, topic?: string, timeoutSeconds?: number): Promise<string | null>;
|
@@ -159,23 +173,21 @@ export declare class PostgresSystemDatabase implements SystemDatabase {
|
|
159
173
|
}): Promise<string | null>;
|
160
174
|
setWorkflowStatus(workflowID: string, status: (typeof StatusString)[keyof typeof StatusString], resetRecoveryAttempts: boolean): Promise<void>;
|
161
175
|
cancelWorkflow(workflowID: string): Promise<void>;
|
176
|
+
checkIfCanceled(workflowID: string): Promise<void>;
|
162
177
|
resumeWorkflow(workflowID: string): Promise<void>;
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
* workflow listener by resolving its promise.
|
169
|
-
*/
|
170
|
-
listenForNotifications(): Promise<void>;
|
171
|
-
getEventDispatchState(svc: string, wfn: string, key: string): Promise<DBOSEventReceiverState | undefined>;
|
178
|
+
registerRunningWorkflow(workflowID: string, workflowPromise: Promise<unknown>): void;
|
179
|
+
awaitRunningWorkflows(): Promise<void>;
|
180
|
+
getWorkflowStatus(workflowID: string, callerID?: string, callerFN?: number): Promise<WorkflowStatusInternal | null>;
|
181
|
+
awaitWorkflowResult(workflowID: string, timeoutSeconds?: number, callerID?: string, timerFuncID?: number): Promise<SystemDatabaseStoredResult | undefined>;
|
182
|
+
getEventDispatchState(service: string, workflowName: string, key: string): Promise<DBOSEventReceiverState | undefined>;
|
172
183
|
upsertEventDispatchState(state: DBOSEventReceiverState): Promise<DBOSEventReceiverState>;
|
173
|
-
|
174
|
-
|
184
|
+
listWorkflows(input: GetWorkflowsInput): Promise<WorkflowStatusInternal[]>;
|
185
|
+
listQueuedWorkflows(input: GetQueuedWorkflowsInput): Promise<WorkflowStatusInternal[]>;
|
175
186
|
getWorkflowQueue(input: GetWorkflowQueueInput): Promise<GetWorkflowQueueOutput>;
|
176
187
|
enqueueWorkflow(workflowId: string, queueName: string): Promise<void>;
|
177
|
-
clearQueueAssignment(
|
178
|
-
dequeueWorkflow(
|
188
|
+
clearQueueAssignment(workflowID: string): Promise<boolean>;
|
189
|
+
dequeueWorkflow(workflowID: string, queue: WorkflowQueue): Promise<void>;
|
179
190
|
findAndMarkStartableWorkflows(queue: WorkflowQueue, executorID: string, appVersion: string): Promise<string[]>;
|
180
191
|
}
|
192
|
+
export {};
|
181
193
|
//# sourceMappingURL=system_database.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"system_database.d.ts","sourceRoot":"","sources":["../../src/system_database.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"system_database.d.ts","sourceRoot":"","sources":["../../src/system_database.ts"],"names":[],"mappings":"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"}
|