From 15047b72886354e1d96335d8f3c50663cf5bb97c Mon Sep 17 00:00:00 2001 From: Matt Baer Date: Mon, 25 Sep 2023 15:30:05 -0400 Subject: [PATCH] Fix jobs query in SQLite --- database.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/database.go b/database.go index 37462d8..4f135c1 100644 --- a/database.go +++ b/database.go @@ -3224,11 +3224,15 @@ func (db *datastore) DeleteJobByPost(postID string) error { } func (db *datastore) GetJobsToRun(action string) ([]*PostJob, error) { + timeWhere := "created < DATE_SUB(NOW(), INTERVAL delay MINUTE) AND created > DATE_SUB(NOW(), INTERVAL delay + 5 MINUTE)" + if db.driverName == driverSQLite { + timeWhere = "created < DATETIME('now', '-' || delay || ' MINUTE') AND created > DATETIME('now', '-' || (delay+5) || ' MINUTE')" + } rows, err := db.Query(`SELECT pj.id, post_id, action, delay FROM publishjobs pj INNER JOIN posts p ON post_id = p.id - WHERE action = ? AND created < DATE_SUB(NOW(), INTERVAL delay MINUTE) AND created > DATE_SUB(NOW(), INTERVAL delay + 5 MINUTE) + WHERE action = ? AND `+timeWhere+` ORDER BY created ASC`, action) if err != nil { log.Error("Failed selecting from publishjobs: %v", err)