@dbos-inc/dbos-sdk 2.10.11-preview → 2.10.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/schemas/system_db_schema.d.ts +4 -12
- package/dist/schemas/system_db_schema.d.ts.map +1 -1
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/client.js +8 -5
- package/dist/src/client.js.map +1 -1
- package/dist/src/dbos-executor.d.ts +1 -2
- package/dist/src/dbos-executor.d.ts.map +1 -1
- package/dist/src/dbos-executor.js +12 -18
- package/dist/src/dbos-executor.js.map +1 -1
- package/dist/src/dbos-runtime/config.d.ts.map +1 -1
- package/dist/src/dbos-runtime/config.js +3 -13
- package/dist/src/dbos-runtime/config.js.map +1 -1
- package/dist/src/dbos.d.ts +1 -6
- package/dist/src/dbos.d.ts.map +1 -1
- package/dist/src/dbos.js +0 -9
- package/dist/src/dbos.js.map +1 -1
- package/dist/src/eventreceiver.d.ts +13 -8
- package/dist/src/eventreceiver.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/system_database.d.ts +5 -16
- package/dist/src/system_database.d.ts.map +1 -1
- package/dist/src/system_database.js +146 -257
- package/dist/src/system_database.js.map +1 -1
- package/dist/src/testing/testing_runtime.js +1 -1
- package/dist/src/testing/testing_runtime.js.map +1 -1
- package/dist/src/wfqueue.d.ts +3 -0
- package/dist/src/wfqueue.d.ts.map +1 -1
- package/dist/src/wfqueue.js +2 -0
- package/dist/src/wfqueue.js.map +1 -1
- package/dist/src/workflow.d.ts +0 -16
- package/dist/src/workflow.d.ts.map +1 -1
- package/dist/src/workflow.js +4 -2
- package/dist/src/workflow.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/migrations/20252523000000_consolidate_inputs.js +22 -0
- package/migrations/20252528000000_consolidate_queues.js +30 -0
- package/package.json +2 -2
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"system_database.d.ts","sourceRoot":"","sources":["../../src/system_database.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"system_database.d.ts","sourceRoot":"","sources":["../../src/system_database.ts"],"names":[],"mappings":"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"}
|
@@ -72,70 +72,70 @@ class NotificationMap {
|
|
72
72
|
}
|
73
73
|
}
|
74
74
|
async function insertWorkflowStatus(client, initStatus) {
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
75
|
+
try {
|
76
|
+
const { rows } = await client.query(`INSERT INTO ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status (
|
77
|
+
workflow_uuid,
|
78
|
+
status,
|
79
|
+
name,
|
80
|
+
class_name,
|
81
|
+
config_name,
|
82
|
+
queue_name,
|
83
|
+
authenticated_user,
|
84
|
+
assumed_role,
|
85
|
+
authenticated_roles,
|
86
|
+
request,
|
87
|
+
executor_id,
|
88
|
+
application_version,
|
89
|
+
application_id,
|
90
|
+
created_at,
|
91
|
+
recovery_attempts,
|
92
|
+
updated_at,
|
93
|
+
workflow_timeout_ms,
|
94
|
+
workflow_deadline_epoch_ms,
|
95
|
+
inputs,
|
96
|
+
deduplication_id,
|
97
|
+
priority
|
98
|
+
) VALUES($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16, $17, $18, $19, $20, $21)
|
99
|
+
ON CONFLICT (workflow_uuid)
|
100
|
+
DO UPDATE SET
|
101
|
+
recovery_attempts = workflow_status.recovery_attempts + 1,
|
102
|
+
updated_at = EXCLUDED.updated_at,
|
103
|
+
executor_id = EXCLUDED.executor_id
|
104
|
+
RETURNING recovery_attempts, status, name, class_name, config_name, queue_name, workflow_deadline_epoch_ms`, [
|
105
|
+
initStatus.workflowUUID,
|
106
|
+
initStatus.status,
|
107
|
+
initStatus.workflowName,
|
108
|
+
initStatus.workflowClassName,
|
109
|
+
initStatus.workflowConfigName,
|
110
|
+
initStatus.queueName ?? null,
|
111
|
+
initStatus.authenticatedUser,
|
112
|
+
initStatus.assumedRole,
|
113
|
+
JSON.stringify(initStatus.authenticatedRoles),
|
114
|
+
JSON.stringify(initStatus.request),
|
115
|
+
initStatus.executorId,
|
116
|
+
initStatus.applicationVersion ?? null,
|
117
|
+
initStatus.applicationID,
|
118
|
+
initStatus.createdAt,
|
119
|
+
initStatus.status === workflow_1.StatusString.ENQUEUED ? 0 : 1,
|
120
|
+
initStatus.updatedAt ?? Date.now(),
|
121
|
+
initStatus.timeoutMS ?? null,
|
122
|
+
initStatus.deadlineEpochMS ?? null,
|
123
|
+
initStatus.input ?? null,
|
124
|
+
initStatus.deduplicationID ?? null,
|
125
|
+
initStatus.priority,
|
126
|
+
]);
|
127
|
+
if (rows.length === 0) {
|
128
|
+
throw new Error(`Attempt to insert workflow ${initStatus.workflowUUID} failed`);
|
129
|
+
}
|
130
|
+
return rows[0];
|
122
131
|
}
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
RETURNING inputs`, [workflowID, serializedInputs]);
|
130
|
-
if (rows.length === 0) {
|
131
|
-
throw new Error(`Attempt to insert workflow ${workflowID} inputs failed`);
|
132
|
+
catch (error) {
|
133
|
+
const err = error;
|
134
|
+
if (err.code === '23505') {
|
135
|
+
throw new error_1.DBOSQueueDuplicatedError(initStatus.workflowUUID, initStatus.queueName ?? '', initStatus.deduplicationID ?? '');
|
136
|
+
}
|
137
|
+
throw error;
|
132
138
|
}
|
133
|
-
return rows[0].inputs;
|
134
|
-
}
|
135
|
-
async function deleteQueuedWorkflows(client, workflowID) {
|
136
|
-
await client.query(`DELETE FROM ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_queue WHERE workflow_uuid = $1`, [
|
137
|
-
workflowID,
|
138
|
-
]);
|
139
139
|
}
|
140
140
|
async function getWorkflowStatusValue(client, workflowID) {
|
141
141
|
const { rows } = await client.query(`SELECT status FROM ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status WHERE workflow_uuid=$1`, [workflowID]);
|
@@ -160,10 +160,16 @@ async function updateWorkflowStatus(client, workflowID, status, options = {}) {
|
|
160
160
|
if (update.resetDeadline) {
|
161
161
|
setClause += `, workflow_deadline_epoch_ms = NULL`;
|
162
162
|
}
|
163
|
-
if (update.queueName) {
|
164
|
-
const param = args.push(update.queueName);
|
163
|
+
if (update.queueName !== undefined) {
|
164
|
+
const param = args.push(update.queueName ?? undefined);
|
165
165
|
setClause += `, queue_name=$${param}`;
|
166
166
|
}
|
167
|
+
if (update.resetDeduplicationID) {
|
168
|
+
setClause += `, deduplication_id = NULL`;
|
169
|
+
}
|
170
|
+
if (update.resetStartedAtEpochMs) {
|
171
|
+
setClause += `, started_at_epoch_ms = NULL`;
|
172
|
+
}
|
167
173
|
const where = options.where ?? {};
|
168
174
|
if (where.status) {
|
169
175
|
const param = args.push(where.status);
|
@@ -221,8 +227,10 @@ function mapWorkflowStatus(row) {
|
|
221
227
|
applicationID: row.application_id,
|
222
228
|
recoveryAttempts: Number(row.recovery_attempts),
|
223
229
|
input: row.inputs,
|
224
|
-
timeoutMS: row.workflow_timeout_ms
|
225
|
-
deadlineEpochMS: row.workflow_deadline_epoch_ms
|
230
|
+
timeoutMS: row.workflow_timeout_ms ? Number(row.workflow_timeout_ms) : undefined,
|
231
|
+
deadlineEpochMS: row.workflow_deadline_epoch_ms ? Number(row.workflow_deadline_epoch_ms) : undefined,
|
232
|
+
deduplicationID: row.deduplication_id ?? undefined,
|
233
|
+
priority: row.priority ?? 0,
|
226
234
|
};
|
227
235
|
}
|
228
236
|
class PostgresSystemDatabase {
|
@@ -335,7 +343,7 @@ class PostgresSystemDatabase {
|
|
335
343
|
await pgSystemClient.query(`DROP DATABASE IF EXISTS ${dbosConfig.system_database};`);
|
336
344
|
await pgSystemClient.end();
|
337
345
|
}
|
338
|
-
async initWorkflowStatus(initStatus,
|
346
|
+
async initWorkflowStatus(initStatus, maxRetries) {
|
339
347
|
const client = await this.pool.connect();
|
340
348
|
try {
|
341
349
|
await client.query('BEGIN ISOLATION LEVEL READ COMMITTED');
|
@@ -370,11 +378,7 @@ class PostgresSystemDatabase {
|
|
370
378
|
this.logger.debug(`Workflow ${initStatus.workflowUUID} attempt number: ${attempts}.`);
|
371
379
|
const status = resRow.status;
|
372
380
|
const deadlineEpochMS = resRow.workflow_deadline_epoch_ms ?? undefined;
|
373
|
-
|
374
|
-
if (serializedInputs !== inputResult) {
|
375
|
-
this.logger.warn(`Workflow inputs for ${initStatus.workflowUUID} changed since the first call! Use the original inputs.`);
|
376
|
-
}
|
377
|
-
return { serializedInputs: inputResult, status, deadlineEpochMS };
|
381
|
+
return { status, deadlineEpochMS };
|
378
382
|
}
|
379
383
|
finally {
|
380
384
|
await client.query('COMMIT');
|
@@ -384,7 +388,9 @@ class PostgresSystemDatabase {
|
|
384
388
|
async recordWorkflowOutput(workflowID, status) {
|
385
389
|
const client = await this.pool.connect();
|
386
390
|
try {
|
387
|
-
await updateWorkflowStatus(client, workflowID, workflow_1.StatusString.SUCCESS, {
|
391
|
+
await updateWorkflowStatus(client, workflowID, workflow_1.StatusString.SUCCESS, {
|
392
|
+
update: { output: status.output, resetDeduplicationID: true },
|
393
|
+
});
|
388
394
|
}
|
389
395
|
finally {
|
390
396
|
client.release();
|
@@ -393,7 +399,9 @@ class PostgresSystemDatabase {
|
|
393
399
|
async recordWorkflowError(workflowID, status) {
|
394
400
|
const client = await this.pool.connect();
|
395
401
|
try {
|
396
|
-
await updateWorkflowStatus(client, workflowID, workflow_1.StatusString.ERROR, {
|
402
|
+
await updateWorkflowStatus(client, workflowID, workflow_1.StatusString.ERROR, {
|
403
|
+
update: { error: status.error, resetDeduplicationID: true },
|
404
|
+
});
|
397
405
|
}
|
398
406
|
finally {
|
399
407
|
client.release();
|
@@ -408,14 +416,6 @@ class PostgresSystemDatabase {
|
|
408
416
|
queueName: i.queue_name,
|
409
417
|
}));
|
410
418
|
}
|
411
|
-
async getWorkflowInputs(workflowID) {
|
412
|
-
const { rows } = await this.pool.query(`SELECT inputs FROM ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_inputs
|
413
|
-
WHERE workflow_uuid=$1`, [workflowID]);
|
414
|
-
if (rows.length === 0) {
|
415
|
-
return null;
|
416
|
-
}
|
417
|
-
return rows[0].inputs;
|
418
|
-
}
|
419
419
|
async #getOperationResultAndThrowIfCancelled(client, workflowID, functionID) {
|
420
420
|
await this.#checkIfCanceled(client, workflowID);
|
421
421
|
const { rows } = await client.query(`SELECT output, error, child_workflow_id, function_name
|
@@ -488,8 +488,10 @@ class PostgresSystemDatabase {
|
|
488
488
|
recoveryAttempts: 0,
|
489
489
|
updatedAt: now,
|
490
490
|
timeoutMS: options.timeoutMS ?? workflowStatus.timeoutMS,
|
491
|
+
input: workflowStatus.input,
|
492
|
+
deduplicationID: undefined,
|
493
|
+
priority: 0,
|
491
494
|
});
|
492
|
-
await insertWorkflowInputs(client, newWorkflowID, workflowStatus.input);
|
493
495
|
if (startStep > 0) {
|
494
496
|
const query = `INSERT INTO ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.operation_outputs
|
495
497
|
(workflow_uuid, function_id, output, error, function_name, child_workflow_id )
|
@@ -498,7 +500,6 @@ class PostgresSystemDatabase {
|
|
498
500
|
WHERE workflow_uuid = $2 AND function_id < $3`;
|
499
501
|
await client.query(query, [newWorkflowID, workflowID, startStep]);
|
500
502
|
}
|
501
|
-
await this.#enqueueWorkflow(client, newWorkflowID, utils_1.INTERNAL_QUEUE_NAME);
|
502
503
|
await client.query('COMMIT');
|
503
504
|
return newWorkflowID;
|
504
505
|
}
|
@@ -830,9 +831,10 @@ class PostgresSystemDatabase {
|
|
830
831
|
await client.query('ROLLBACK');
|
831
832
|
return;
|
832
833
|
}
|
833
|
-
//
|
834
|
-
await
|
835
|
-
|
834
|
+
// Set the workflow's status to CANCELLED and remove it from any queue it is on
|
835
|
+
await updateWorkflowStatus(client, workflowID, workflow_1.StatusString.CANCELLED, {
|
836
|
+
update: { queueName: null, resetDeduplicationID: true, resetStartedAtEpochMs: true },
|
837
|
+
});
|
836
838
|
await client.query('COMMIT');
|
837
839
|
}
|
838
840
|
catch (error) {
|
@@ -879,17 +881,17 @@ class PostgresSystemDatabase {
|
|
879
881
|
}
|
880
882
|
return;
|
881
883
|
}
|
882
|
-
//
|
883
|
-
await deleteQueuedWorkflows(client, workflowID);
|
884
|
+
// Set the workflow's status to ENQUEUED and reset recovery attempts and deadline.
|
884
885
|
await updateWorkflowStatus(client, workflowID, workflow_1.StatusString.ENQUEUED, {
|
885
886
|
update: {
|
886
887
|
queueName: utils_1.INTERNAL_QUEUE_NAME,
|
887
888
|
resetRecoveryAttempts: true,
|
888
889
|
resetDeadline: true,
|
890
|
+
resetDeduplicationID: true,
|
891
|
+
resetStartedAtEpochMs: true,
|
889
892
|
},
|
890
893
|
throwOnFailure: false,
|
891
894
|
});
|
892
|
-
await this.#enqueueWorkflow(client, workflowID, utils_1.INTERNAL_QUEUE_NAME);
|
893
895
|
await client.query('COMMIT');
|
894
896
|
}
|
895
897
|
catch (error) {
|
@@ -1097,9 +1099,7 @@ class PostgresSystemDatabase {
|
|
1097
1099
|
async listWorkflows(input) {
|
1098
1100
|
const schemaName = dbos_executor_1.DBOSExecutor.systemDBSchemaName;
|
1099
1101
|
input.sortDesc = input.sortDesc ?? false; // By default, sort in ascending order
|
1100
|
-
let query = this.knexDB(`${schemaName}.workflow_status`)
|
1101
|
-
.join(`${schemaName}.workflow_inputs`, `${schemaName}.workflow_status.workflow_uuid`, `${schemaName}.workflow_inputs.workflow_uuid`)
|
1102
|
-
.orderBy(`${schemaName}.workflow_status.created_at`, input.sortDesc ? 'desc' : 'asc');
|
1102
|
+
let query = this.knexDB(`${schemaName}.workflow_status`).orderBy(`${schemaName}.workflow_status.created_at`, input.sortDesc ? 'desc' : 'asc');
|
1103
1103
|
if (input.workflowName) {
|
1104
1104
|
query = query.where(`${schemaName}.workflow_status.name`, input.workflowName);
|
1105
1105
|
}
|
@@ -1136,15 +1136,15 @@ class PostgresSystemDatabase {
|
|
1136
1136
|
async listQueuedWorkflows(input) {
|
1137
1137
|
const schemaName = dbos_executor_1.DBOSExecutor.systemDBSchemaName;
|
1138
1138
|
const sortDesc = input.sortDesc ?? false; // By default, sort in ascending order
|
1139
|
-
let query = this.knexDB(`${schemaName}.
|
1140
|
-
.
|
1141
|
-
.
|
1139
|
+
let query = this.knexDB(`${schemaName}.workflow_status`)
|
1140
|
+
.whereNotNull(`${schemaName}.workflow_status.queue_name`)
|
1141
|
+
.whereIn(`${schemaName}.workflow_status.status`, [workflow_1.StatusString.ENQUEUED, workflow_1.StatusString.PENDING])
|
1142
1142
|
.orderBy(`${schemaName}.workflow_status.created_at`, sortDesc ? 'desc' : 'asc');
|
1143
1143
|
if (input.workflowName) {
|
1144
|
-
query = query.
|
1144
|
+
query = query.where(`${schemaName}.workflow_status.name`, input.workflowName);
|
1145
1145
|
}
|
1146
1146
|
if (input.queueName) {
|
1147
|
-
query = query.
|
1147
|
+
query = query.where(`${schemaName}.workflow_status.queue_name`, input.queueName);
|
1148
1148
|
}
|
1149
1149
|
if (input.startTime) {
|
1150
1150
|
query = query.where(`${schemaName}.workflow_status.created_at`, '>=', new Date(input.startTime).getTime());
|
@@ -1153,7 +1153,7 @@ class PostgresSystemDatabase {
|
|
1153
1153
|
query = query.where(`${schemaName}.workflow_status.created_at`, '<=', new Date(input.endTime).getTime());
|
1154
1154
|
}
|
1155
1155
|
if (input.status) {
|
1156
|
-
query = query.
|
1156
|
+
query = query.where(`${schemaName}.workflow_status.status`, input.status);
|
1157
1157
|
}
|
1158
1158
|
if (input.limit) {
|
1159
1159
|
query = query.limit(input.limit);
|
@@ -1164,115 +1164,13 @@ class PostgresSystemDatabase {
|
|
1164
1164
|
const rows = await query;
|
1165
1165
|
return rows.map(mapWorkflowStatus);
|
1166
1166
|
}
|
1167
|
-
async getWorkflowQueue(input) {
|
1168
|
-
// Create the initial query with a join to workflow_status table to get executor_id
|
1169
|
-
let query = this.knexDB(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_queue as wq`)
|
1170
|
-
.join(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status as ws`, 'wq.workflow_uuid', '=', 'ws.workflow_uuid')
|
1171
|
-
.orderBy('wq.created_at_epoch_ms', 'desc');
|
1172
|
-
if (input.queueName) {
|
1173
|
-
query = query.where('wq.queue_name', input.queueName);
|
1174
|
-
}
|
1175
|
-
if (input.startTime) {
|
1176
|
-
query = query.where('wq.created_at_epoch_ms', '>=', new Date(input.startTime).getTime());
|
1177
|
-
}
|
1178
|
-
if (input.endTime) {
|
1179
|
-
query = query.where('wq.created_at_epoch_ms', '<=', new Date(input.endTime).getTime());
|
1180
|
-
}
|
1181
|
-
if (input.limit) {
|
1182
|
-
query = query.limit(input.limit);
|
1183
|
-
}
|
1184
|
-
const rows = await query
|
1185
|
-
.select({
|
1186
|
-
workflow_uuid: 'wq.workflow_uuid',
|
1187
|
-
executor_id: 'ws.executor_id',
|
1188
|
-
queue_name: 'wq.queue_name',
|
1189
|
-
created_at_epoch_ms: 'wq.created_at_epoch_ms',
|
1190
|
-
started_at_epoch_ms: 'wq.started_at_epoch_ms',
|
1191
|
-
completed_at_epoch_ms: 'wq.completed_at_epoch_ms',
|
1192
|
-
})
|
1193
|
-
.then((rows) => rows);
|
1194
|
-
const workflows = rows.map((row) => {
|
1195
|
-
return {
|
1196
|
-
workflowID: row.workflow_uuid,
|
1197
|
-
executorID: row.executor_id,
|
1198
|
-
queueName: row.queue_name,
|
1199
|
-
createdAt: row.created_at_epoch_ms,
|
1200
|
-
startedAt: row.started_at_epoch_ms,
|
1201
|
-
completedAt: row.completed_at_epoch_ms,
|
1202
|
-
};
|
1203
|
-
});
|
1204
|
-
return { workflows };
|
1205
|
-
}
|
1206
|
-
async #enqueueWorkflow(client, workflowID, queueName, enqueueOptions) {
|
1207
|
-
const dedupID = enqueueOptions?.deduplicationID ?? null;
|
1208
|
-
const priority = enqueueOptions?.priority ?? 0;
|
1209
|
-
try {
|
1210
|
-
await client.query(`INSERT INTO ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_queue (workflow_uuid, queue_name, deduplication_id, priority)
|
1211
|
-
VALUES ($1, $2, $3, $4)
|
1212
|
-
ON CONFLICT (workflow_uuid)
|
1213
|
-
DO NOTHING;`, [workflowID, queueName, dedupID, priority]);
|
1214
|
-
}
|
1215
|
-
catch (error) {
|
1216
|
-
const err = error;
|
1217
|
-
if (err.code === '23505') {
|
1218
|
-
// unique constraint violation (only expected for the INSERT query)
|
1219
|
-
throw new error_1.DBOSQueueDuplicatedError(workflowID, queueName, dedupID ?? '');
|
1220
|
-
}
|
1221
|
-
this.logger.error(`Error enqueuing workflow ${workflowID} to queue ${queueName}`);
|
1222
|
-
throw error;
|
1223
|
-
}
|
1224
|
-
}
|
1225
|
-
async enqueueWorkflow(workflowId, queueName, enqueueOptions) {
|
1226
|
-
const client = await this.pool.connect();
|
1227
|
-
try {
|
1228
|
-
await this.#enqueueWorkflow(client, workflowId, queueName, enqueueOptions);
|
1229
|
-
}
|
1230
|
-
finally {
|
1231
|
-
client.release();
|
1232
|
-
}
|
1233
|
-
}
|
1234
1167
|
async clearQueueAssignment(workflowID) {
|
1235
|
-
|
1236
|
-
|
1237
|
-
|
1238
|
-
|
1239
|
-
|
1240
|
-
|
1241
|
-
WHERE workflow_uuid = $1 AND completed_at_epoch_ms IS NULL;`, [workflowID]);
|
1242
|
-
// If no rows were affected, the workflow is not anymore in the queue or was already completed
|
1243
|
-
if (wqRes.rowCount === 0) {
|
1244
|
-
await client.query('ROLLBACK');
|
1245
|
-
return false;
|
1246
|
-
}
|
1247
|
-
// Reset the status of the task to "ENQUEUED"
|
1248
|
-
await updateWorkflowStatus(client, workflowID, workflow_1.StatusString.ENQUEUED);
|
1249
|
-
await client.query('COMMIT');
|
1250
|
-
return true;
|
1251
|
-
}
|
1252
|
-
catch (error) {
|
1253
|
-
await client.query('ROLLBACK');
|
1254
|
-
throw error;
|
1255
|
-
}
|
1256
|
-
finally {
|
1257
|
-
client.release();
|
1258
|
-
}
|
1259
|
-
}
|
1260
|
-
async dequeueWorkflow(workflowID, queue) {
|
1261
|
-
const client = await this.pool.connect();
|
1262
|
-
try {
|
1263
|
-
if (queue.rateLimit) {
|
1264
|
-
const time = Date.now();
|
1265
|
-
await client.query(`UPDATE ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_queue
|
1266
|
-
SET completed_at_epoch_ms = $2
|
1267
|
-
WHERE workflow_uuid = $1;`, [workflowID, time]);
|
1268
|
-
}
|
1269
|
-
else {
|
1270
|
-
await deleteQueuedWorkflows(client, workflowID);
|
1271
|
-
}
|
1272
|
-
}
|
1273
|
-
finally {
|
1274
|
-
client.release();
|
1275
|
-
}
|
1168
|
+
// Reset the status of the task from "PENDING" to "ENQUEUED"
|
1169
|
+
const wqRes = await this.pool.query(`UPDATE ${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status
|
1170
|
+
SET started_at_epoch_ms = NULL, status = $2
|
1171
|
+
WHERE workflow_uuid = $1 AND queue_name is NOT NULL AND status = $3`, [workflowID, workflow_1.StatusString.ENQUEUED, workflow_1.StatusString.PENDING]);
|
1172
|
+
// If no rows were affected, the workflow is not anymore in the queue or was already completed
|
1173
|
+
return (wqRes.rowCount ?? 0) > 0;
|
1276
1174
|
}
|
1277
1175
|
async findAndMarkStartableWorkflows(queue, executorID, appVersion) {
|
1278
1176
|
const startTimeMs = Date.now();
|
@@ -1282,64 +1180,67 @@ class PostgresSystemDatabase {
|
|
1282
1180
|
// If there is a rate limit, compute how many functions have started in its period.
|
1283
1181
|
let numRecentQueries = 0;
|
1284
1182
|
if (queue.rateLimit) {
|
1285
|
-
const numRecentQueriesS = (await trx(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.
|
1183
|
+
const numRecentQueriesS = (await trx(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status`)
|
1286
1184
|
.count()
|
1287
1185
|
.where('queue_name', queue.name)
|
1186
|
+
.andWhere('status', '<>', workflow_1.StatusString.ENQUEUED)
|
1288
1187
|
.andWhere('started_at_epoch_ms', '>', startTimeMs - limiterPeriodMS)
|
1289
1188
|
.first()).count;
|
1290
1189
|
numRecentQueries = parseInt(`${numRecentQueriesS}`);
|
1291
1190
|
if (numRecentQueries >= queue.rateLimit.limitPerPeriod) {
|
1292
|
-
return
|
1191
|
+
return [];
|
1293
1192
|
}
|
1294
1193
|
}
|
1295
1194
|
// Dequeue functions eligible for this worker and ordered by the time at which they were enqueued.
|
1296
1195
|
// If there is a global or local concurrency limit N, select only the N oldest enqueued
|
1297
1196
|
// functions, else select all of them.
|
1298
|
-
// First lets figure out how many tasks are eligible for dequeue.
|
1299
|
-
// This means figuring out how many unstarted tasks are within the local and global concurrency limits
|
1300
|
-
const runningTasksSubquery = trx(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_queue as wq`)
|
1301
|
-
.join(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status as ws`, 'wq.workflow_uuid', '=', 'ws.workflow_uuid')
|
1302
|
-
.select('ws.executor_id')
|
1303
|
-
.count('* as task_count')
|
1304
|
-
.where('wq.queue_name', queue.name)
|
1305
|
-
.whereNotNull('wq.started_at_epoch_ms') // started
|
1306
|
-
.whereNull('wq.completed_at_epoch_ms') // not completed
|
1307
|
-
.groupBy('ws.executor_id');
|
1308
|
-
const runningTasksResult = await runningTasksSubquery;
|
1309
|
-
const runningTasksResultDict = {};
|
1310
|
-
runningTasksResult.forEach((row) => {
|
1311
|
-
runningTasksResultDict[row.executor_id] = Number(row.task_count);
|
1312
|
-
});
|
1313
|
-
const runningTasksForThisWorker = runningTasksResultDict[executorID] || 0;
|
1314
1197
|
let maxTasks = Infinity;
|
1315
|
-
if (queue.workerConcurrency !== undefined) {
|
1316
|
-
|
1317
|
-
|
1318
|
-
|
1319
|
-
|
1320
|
-
|
1321
|
-
|
1198
|
+
if (queue.workerConcurrency !== undefined || queue.concurrency !== undefined) {
|
1199
|
+
// Count how many workflows on this queue are currently PENDING both locally and globally.
|
1200
|
+
const runningTasksSubquery = trx(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status`)
|
1201
|
+
.select('executor_id')
|
1202
|
+
.count('* as task_count')
|
1203
|
+
.where('queue_name', queue.name)
|
1204
|
+
.andWhere('status', workflow_1.StatusString.PENDING)
|
1205
|
+
.groupBy('executor_id');
|
1206
|
+
const runningTasksResult = await runningTasksSubquery;
|
1207
|
+
const runningTasksResultDict = {};
|
1208
|
+
runningTasksResult.forEach((row) => {
|
1209
|
+
runningTasksResultDict[row.executor_id] = Number(row.task_count);
|
1210
|
+
});
|
1211
|
+
const runningTasksForThisWorker = runningTasksResultDict[executorID] || 0;
|
1212
|
+
if (queue.workerConcurrency !== undefined) {
|
1213
|
+
maxTasks = Math.max(0, queue.workerConcurrency - runningTasksForThisWorker);
|
1214
|
+
}
|
1215
|
+
if (queue.concurrency !== undefined) {
|
1216
|
+
const totalRunningTasks = Object.values(runningTasksResultDict).reduce((acc, val) => acc + val, 0);
|
1217
|
+
if (totalRunningTasks > queue.concurrency) {
|
1218
|
+
this.logger.warn(`Total running tasks (${totalRunningTasks}) exceeds the global concurrency limit (${queue.concurrency})`);
|
1219
|
+
}
|
1220
|
+
const availableTasks = Math.max(0, queue.concurrency - totalRunningTasks);
|
1221
|
+
maxTasks = Math.min(maxTasks, availableTasks);
|
1322
1222
|
}
|
1323
|
-
const availableTasks = Math.max(0, queue.concurrency - totalRunningTasks);
|
1324
|
-
maxTasks = Math.min(maxTasks, availableTasks);
|
1325
1223
|
}
|
1326
|
-
//
|
1327
|
-
|
1328
|
-
|
1329
|
-
.
|
1330
|
-
.
|
1331
|
-
.andWhere('wq.queue_name', queue.name)
|
1224
|
+
// Retrieve the first max_tasks workflows in the queue.
|
1225
|
+
// Only retrieve workflows of the local version (or without version set)
|
1226
|
+
let query = trx(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_status`)
|
1227
|
+
.where('status', workflow_1.StatusString.ENQUEUED)
|
1228
|
+
.andWhere('queue_name', queue.name)
|
1332
1229
|
.andWhere((b) => {
|
1333
|
-
b.whereNull('
|
1230
|
+
b.whereNull('application_version').orWhere('application_version', appVersion);
|
1334
1231
|
})
|
1335
|
-
.orderBy('wq.priority', 'asc')
|
1336
|
-
.orderBy('wq.created_at_epoch_ms', 'asc')
|
1337
1232
|
.forUpdate()
|
1338
1233
|
.noWait();
|
1234
|
+
if (queue.priorityEnabled) {
|
1235
|
+
query = query.orderBy('priority', 'asc').orderBy('created_at', 'asc');
|
1236
|
+
}
|
1237
|
+
else {
|
1238
|
+
query = query.orderBy('created_at', 'asc');
|
1239
|
+
}
|
1339
1240
|
if (maxTasks !== Infinity) {
|
1340
1241
|
query = query.limit(maxTasks);
|
1341
1242
|
}
|
1342
|
-
const rows = (await query.select(['
|
1243
|
+
const rows = (await query.select(['workflow_uuid']));
|
1343
1244
|
// Start the workflows
|
1344
1245
|
const workflowIDs = rows.map((row) => row.workflow_uuid);
|
1345
1246
|
for (const id of workflowIDs) {
|
@@ -1356,28 +1257,16 @@ class PostgresSystemDatabase {
|
|
1356
1257
|
status: workflow_1.StatusString.PENDING,
|
1357
1258
|
executor_id: executorID,
|
1358
1259
|
application_version: appVersion,
|
1260
|
+
started_at_epoch_ms: startTimeMs,
|
1359
1261
|
workflow_deadline_epoch_ms: trx.raw('CASE WHEN workflow_timeout_ms IS NOT NULL AND workflow_deadline_epoch_ms IS NULL THEN (EXTRACT(epoch FROM now()) * 1000)::bigint + workflow_timeout_ms ELSE workflow_deadline_epoch_ms END'),
|
1360
1262
|
});
|
1361
1263
|
if (res > 0) {
|
1362
1264
|
claimedIDs.push(id);
|
1363
|
-
await trx(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_queue`)
|
1364
|
-
.where('workflow_uuid', id)
|
1365
|
-
.update('started_at_epoch_ms', startTimeMs);
|
1366
1265
|
}
|
1367
1266
|
// If we did not update this record, probably someone else did. Count in either case.
|
1368
1267
|
++numRecentQueries;
|
1369
1268
|
}
|
1370
1269
|
}, { isolationLevel: 'repeatable read' });
|
1371
|
-
// If we have a rate limit, garbage-collect all completed functions started
|
1372
|
-
// before the period. If there's no limiter, there's no need--they were
|
1373
|
-
// deleted on completion.
|
1374
|
-
if (queue.rateLimit) {
|
1375
|
-
await this.knexDB(`${dbos_executor_1.DBOSExecutor.systemDBSchemaName}.workflow_queue`)
|
1376
|
-
.whereNotNull('completed_at_epoch_ms')
|
1377
|
-
.andWhere('queue_name', queue.name)
|
1378
|
-
.andWhere('started_at_epoch_ms', '<', startTimeMs - limiterPeriodMS)
|
1379
|
-
.delete();
|
1380
|
-
}
|
1381
1270
|
// Return the IDs of all functions we marked started
|
1382
1271
|
return claimedIDs;
|
1383
1272
|
}
|