@cascade-flow/backend-postgres 0.2.19 → 0.2.20
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/db.d.ts.map +1 -1
- package/dist/index.js +114 -51
- package/dist/index.js.map +3 -3
- package/package.json +1 -1
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,EACV,KAAK,EACL,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,cAAc,EAEf,MAAM,iCAAiC,CAAC;AAGzC,YAAY,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAU/B;;GAEG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,MAAM;gBADN,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,MAAM,EAAE,MAAM;IAGxB;;OAEG;IACH,OAAO,IAAI,EAAE,CAAC,IAAI;IAIlB;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB;;;OAGG;IACG,WAAW,CACf,KAAK,EAAE,iBAAiB,GAAG,aAAa,EACxC,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,IAAI,CAAC;IAmKhB;;;OAGG;IACG,qBAAqB,CACzB,MAAM,EAAE,EAAE,CAAC,UAAU,EACrB,KAAK,EAAE,iBAAiB,GAAG,aAAa,EACxC,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,IAAI,CAAC;IA8JhB;;OAEG;IACG,UAAU,CACd,KAAK,EAAE,iBAAiB,GAAG,aAAa,EACxC,OAAO,EAAE;QACP,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;QAC/B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;KAClB,GACA,OAAO,CAAC,KAAK,EAAE,CAAC;IA+CnB;;OAEG;IACG,gBAAgB,CACpB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,KAAK,EAAE,CAAC;IAqBnB;;;;;;;;OAQG;IACG,2BAA2B,CAC/B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IA+BpC;;;OAGG;IACG,kBAAkB,CACtB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,SAAS,GACtB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAyIzB;;;OAGG;IACG,kBAAkB,CACtB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GACA,OAAO,CAAC,KAAK,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -5228,31 +5228,55 @@ class DatabaseClient {
|
|
|
5228
5228
|
try {
|
|
5229
5229
|
const currentTimeUs = Date.now() * 1000;
|
|
5230
5230
|
const scheduledTypes = ["StepScheduled", "StepReclaimed", "StepRetrying"];
|
|
5231
|
-
|
|
5232
|
-
|
|
5233
|
-
|
|
5234
|
-
|
|
5235
|
-
|
|
5236
|
-
|
|
5237
|
-
|
|
5238
|
-
|
|
5239
|
-
|
|
5240
|
-
|
|
5241
|
-
|
|
5242
|
-
|
|
5243
|
-
|
|
5244
|
-
|
|
5245
|
-
|
|
5246
|
-
|
|
5247
|
-
|
|
5248
|
-
|
|
5249
|
-
|
|
5250
|
-
|
|
5251
|
-
|
|
5252
|
-
|
|
5253
|
-
|
|
5254
|
-
|
|
5255
|
-
|
|
5231
|
+
const result = await client.query(`WITH latest_workflow_events AS (
|
|
5232
|
+
SELECT DISTINCT ON (workflow_slug, run_id)
|
|
5233
|
+
workflow_slug,
|
|
5234
|
+
run_id,
|
|
5235
|
+
type
|
|
5236
|
+
FROM ${this.schema}.workflow_events
|
|
5237
|
+
WHERE ($1::text[] IS NULL OR workflow_slug = ANY($1))
|
|
5238
|
+
AND type IN (
|
|
5239
|
+
'RunSubmitted',
|
|
5240
|
+
'WorkflowRetryStarted',
|
|
5241
|
+
'WorkflowStarted',
|
|
5242
|
+
'WorkflowResumed',
|
|
5243
|
+
'WorkflowCompleted',
|
|
5244
|
+
'WorkflowFailed',
|
|
5245
|
+
'WorkflowCancelled'
|
|
5246
|
+
)
|
|
5247
|
+
ORDER BY workflow_slug, run_id, timestamp_us DESC, event_id DESC
|
|
5248
|
+
),
|
|
5249
|
+
active_runs AS (
|
|
5250
|
+
SELECT workflow_slug, run_id
|
|
5251
|
+
FROM latest_workflow_events
|
|
5252
|
+
WHERE type IN ('RunSubmitted', 'WorkflowRetryStarted', 'WorkflowStarted', 'WorkflowResumed')
|
|
5253
|
+
),
|
|
5254
|
+
latest_step_events AS (
|
|
5255
|
+
SELECT DISTINCT ON (se.workflow_slug, se.run_id, se.step_id)
|
|
5256
|
+
se.workflow_slug,
|
|
5257
|
+
se.run_id,
|
|
5258
|
+
se.step_id,
|
|
5259
|
+
se.type,
|
|
5260
|
+
se.available_at_us,
|
|
5261
|
+
se.priority
|
|
5262
|
+
FROM ${this.schema}.step_events se
|
|
5263
|
+
INNER JOIN active_runs ar
|
|
5264
|
+
ON ar.workflow_slug = se.workflow_slug
|
|
5265
|
+
AND ar.run_id = se.run_id
|
|
5266
|
+
WHERE se.type NOT IN ('LogEntry', 'StepCheckpoint', 'StepCheckpointFailed')
|
|
5267
|
+
ORDER BY se.workflow_slug, se.run_id, se.step_id, se.timestamp_us DESC, se.event_id DESC
|
|
5268
|
+
)
|
|
5269
|
+
SELECT workflow_slug, run_id, step_id
|
|
5270
|
+
FROM latest_step_events
|
|
5271
|
+
WHERE type = ANY($2)
|
|
5272
|
+
AND (available_at_us IS NULL OR available_at_us <= $3)
|
|
5273
|
+
ORDER BY priority DESC NULLS LAST, available_at_us ASC
|
|
5274
|
+
LIMIT COALESCE($4::int, 2147483647)`, [
|
|
5275
|
+
options?.workflowSlugs ?? null,
|
|
5276
|
+
scheduledTypes,
|
|
5277
|
+
currentTimeUs,
|
|
5278
|
+
options?.limit ?? null
|
|
5279
|
+
]);
|
|
5256
5280
|
return result.rows.map((row) => ({
|
|
5257
5281
|
workflowSlug: row.workflow_slug,
|
|
5258
5282
|
runId: row.run_id,
|
|
@@ -5266,21 +5290,49 @@ class DatabaseClient {
|
|
|
5266
5290
|
const client = await this.pool.connect();
|
|
5267
5291
|
try {
|
|
5268
5292
|
const currentTimeUs = Date.now() * 1000;
|
|
5269
|
-
const
|
|
5270
|
-
|
|
5271
|
-
|
|
5272
|
-
|
|
5273
|
-
|
|
5274
|
-
|
|
5275
|
-
|
|
5276
|
-
|
|
5277
|
-
|
|
5278
|
-
|
|
5279
|
-
|
|
5280
|
-
|
|
5281
|
-
|
|
5282
|
-
|
|
5283
|
-
|
|
5293
|
+
const result = await client.query(`WITH latest_workflow_events AS (
|
|
5294
|
+
SELECT DISTINCT ON (workflow_slug, run_id)
|
|
5295
|
+
workflow_slug,
|
|
5296
|
+
run_id,
|
|
5297
|
+
type
|
|
5298
|
+
FROM ${this.schema}.workflow_events
|
|
5299
|
+
WHERE type IN (
|
|
5300
|
+
'RunSubmitted',
|
|
5301
|
+
'WorkflowRetryStarted',
|
|
5302
|
+
'WorkflowStarted',
|
|
5303
|
+
'WorkflowResumed',
|
|
5304
|
+
'WorkflowCompleted',
|
|
5305
|
+
'WorkflowFailed',
|
|
5306
|
+
'WorkflowCancelled'
|
|
5307
|
+
)
|
|
5308
|
+
ORDER BY workflow_slug, run_id, timestamp_us DESC, event_id DESC
|
|
5309
|
+
),
|
|
5310
|
+
running_runs AS (
|
|
5311
|
+
SELECT workflow_slug, run_id
|
|
5312
|
+
FROM latest_workflow_events
|
|
5313
|
+
WHERE type IN ('WorkflowStarted', 'WorkflowResumed')
|
|
5314
|
+
),
|
|
5315
|
+
latest_step_events AS (
|
|
5316
|
+
SELECT DISTINCT ON (se.workflow_slug, se.run_id, se.step_id)
|
|
5317
|
+
se.workflow_slug,
|
|
5318
|
+
se.run_id,
|
|
5319
|
+
se.step_id,
|
|
5320
|
+
se.type,
|
|
5321
|
+
se.timestamp_us,
|
|
5322
|
+
se.worker_id,
|
|
5323
|
+
se.attempt_number
|
|
5324
|
+
FROM ${this.schema}.step_events se
|
|
5325
|
+
INNER JOIN running_runs rr
|
|
5326
|
+
ON rr.workflow_slug = se.workflow_slug
|
|
5327
|
+
AND rr.run_id = se.run_id
|
|
5328
|
+
WHERE se.type NOT IN ('LogEntry', 'StepCheckpoint', 'StepCheckpointFailed')
|
|
5329
|
+
ORDER BY se.workflow_slug, se.run_id, se.step_id, se.timestamp_us DESC, se.event_id DESC
|
|
5330
|
+
)
|
|
5331
|
+
SELECT workflow_slug, run_id, step_id, worker_id, attempt_number, timestamp_us
|
|
5332
|
+
FROM latest_step_events
|
|
5333
|
+
WHERE type IN ('StepStarted', 'StepHeartbeat')
|
|
5334
|
+
AND timestamp_us < $1
|
|
5335
|
+
AND worker_id IS NOT NULL`, [currentTimeUs - staleThresholdUs]);
|
|
5284
5336
|
return result.rows.map((row) => ({
|
|
5285
5337
|
workflowSlug: row.workflow_slug,
|
|
5286
5338
|
runId: row.run_id,
|
|
@@ -5494,16 +5546,27 @@ class DatabaseClient {
|
|
|
5494
5546
|
async listActiveWorkflows() {
|
|
5495
5547
|
const client = await this.pool.connect();
|
|
5496
5548
|
try {
|
|
5497
|
-
const result = await client.query(`
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
|
|
5501
|
-
|
|
5502
|
-
|
|
5503
|
-
|
|
5504
|
-
|
|
5505
|
-
|
|
5506
|
-
|
|
5549
|
+
const result = await client.query(`WITH latest_workflow_events AS (
|
|
5550
|
+
SELECT DISTINCT ON (workflow_slug, run_id)
|
|
5551
|
+
workflow_slug,
|
|
5552
|
+
run_id,
|
|
5553
|
+
type
|
|
5554
|
+
FROM ${this.schema}.workflow_events
|
|
5555
|
+
WHERE type IN (
|
|
5556
|
+
'RunSubmitted',
|
|
5557
|
+
'WorkflowRetryStarted',
|
|
5558
|
+
'WorkflowStarted',
|
|
5559
|
+
'WorkflowResumed',
|
|
5560
|
+
'WorkflowCompleted',
|
|
5561
|
+
'WorkflowFailed',
|
|
5562
|
+
'WorkflowCancelled'
|
|
5563
|
+
)
|
|
5564
|
+
ORDER BY workflow_slug, run_id, timestamp_us DESC, event_id DESC
|
|
5565
|
+
)
|
|
5566
|
+
SELECT DISTINCT workflow_slug
|
|
5567
|
+
FROM latest_workflow_events
|
|
5568
|
+
WHERE type IN ('RunSubmitted', 'WorkflowRetryStarted', 'WorkflowStarted', 'WorkflowResumed')
|
|
5569
|
+
ORDER BY workflow_slug ASC`);
|
|
5507
5570
|
return result.rows.map((row) => row.workflow_slug);
|
|
5508
5571
|
} finally {
|
|
5509
5572
|
client.release();
|
|
@@ -7855,4 +7918,4 @@ export {
|
|
|
7855
7918
|
PostgresBackend
|
|
7856
7919
|
};
|
|
7857
7920
|
|
|
7858
|
-
//# debugId=
|
|
7921
|
+
//# debugId=70613711DE018DE364756E2164756E21
|