Skip to content

Commit eeb42da

Browse files
committed
fix(api): simplify date comparison in getDueCronTriggers using lte for improved clarity
1 parent d9d9b28 commit eeb42da

1 file changed

Lines changed: 10 additions & 17 deletions

File tree

apps/api/src/db/queries.ts

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {
66
WorkflowExecutionStatus,
77
} from "@dafthunk/types";
88
import * as crypto from "crypto";
9-
import { and, desc, eq, inArray, SQL, sql } from "drizzle-orm";
9+
import { and, desc, eq, inArray, lte, SQL, sql } from "drizzle-orm";
1010
import { alias } from "drizzle-orm/sqlite-core";
1111
import { v7 as uuidv7 } from "uuid";
1212

@@ -1207,31 +1207,24 @@ export async function getDueCronTriggers(
12071207
selectedDeployment: selectedDeployment,
12081208
})
12091209
.from(cronTriggers)
1210-
.where(
1211-
and(
1212-
eq(cronTriggers.active, true),
1213-
sql`${cronTriggers.nextRunAt} <= ${Math.floor(now.getTime() / 1000)}`
1214-
)
1215-
)
1210+
.where(and(eq(cronTriggers.active, true), lte(cronTriggers.nextRunAt, now)))
12161211
.innerJoin(workflows, eq(workflows.id, cronTriggers.workflowId))
1217-
.innerJoin(latestByWorkflow, eq(latestByWorkflow.workflowId, workflows.id))
1218-
.innerJoin(
1212+
.leftJoin(latestByWorkflow, eq(latestByWorkflow.workflowId, workflows.id))
1213+
.leftJoin(
12191214
latestDeployment,
12201215
and(
12211216
eq(latestDeployment.workflowId, latestByWorkflow.workflowId),
12221217
eq(latestDeployment.version, latestByWorkflow.latestVersion)
12231218
)
12241219
)
1225-
.leftJoin(
1226-
selectedDeployment,
1227-
and(
1228-
eq(selectedDeployment.workflowId, workflows.id),
1229-
eq(selectedDeployment.version, cronTriggers.versionNumber)
1230-
)
1231-
)
12321220
.all();
12331221

1234-
return rows.map((r) => ({
1222+
return rows
1223+
.filter(r =>
1224+
r.cronTrigger.versionAlias === 'dev' ||
1225+
(r.cronTrigger.versionAlias === 'latest' && r.latestDeployment) ||
1226+
(r.cronTrigger.versionAlias === 'version' && r.selectedDeployment)
1227+
).map((r) => ({
12351228
cronTrigger: r.cronTrigger,
12361229
workflow: r.workflow,
12371230
deployment:

0 commit comments

Comments
 (0)