diff options
| author | Stefan van den Oord <stefan@medicinemen.eu> | 2024-06-14 16:08:59 +0200 |
|---|---|---|
| committer | Stefan van den Oord <stefan@medicinemen.eu> | 2024-06-14 16:08:59 +0200 |
| commit | 85d13545275678a1077b9600fce136ae10dcb809 (patch) | |
| tree | 66acd3b2d5933de18945dd8d34420199bb27046e /src/com/github/ivarref/yoltq.clj | |
| parent | Update dependency to use the new free Datomic version (diff) | |
| download | fiinha-85d13545275678a1077b9600fce136ae10dcb809.tar.gz fiinha-85d13545275678a1077b9600fce136ae10dcb809.tar.xz | |
#3 Add optional batch name to queue jobs
Diffstat (limited to 'src/com/github/ivarref/yoltq.clj')
| -rw-r--r-- | src/com/github/ivarref/yoltq.clj | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/com/github/ivarref/yoltq.clj b/src/com/github/ivarref/yoltq.clj index 379d701..1ba286e 100644 --- a/src/com/github/ivarref/yoltq.clj +++ b/src/com/github/ivarref/yoltq.clj @@ -230,6 +230,29 @@ (sort-by (juxt :qname :status)) (vec)))) +(defn batch-progress [queue-name batch-name] + (let [{:keys [conn]} @*config* + db (d/db conn)] + (->> (d/q '[:find ?e ?qname ?bname ?status + :keys :e :qname :bname :status + :in $ ?qname ?bname + :where + [?e :com.github.ivarref.yoltq/queue-name ?qname] + [?e :com.github.ivarref.yoltq/batch-name ?bname] + [?e :com.github.ivarref.yoltq/status ?status]] + db queue-name batch-name) + (mapv #(select-keys % [:qname :bname :status])) + (mapv (fn [qitem] {qitem 1})) + (reduce (partial merge-with +) {}) + (mapv (fn [[{:keys [qname bname status]} v]] + (array-map + :qname qname + :batch-name bname + :status status + :count v))) + (sort-by (juxt :qname :batch-name :status)) + (vec)))) + (defn get-errors [qname] (let [{:keys [conn]} @*config* db (d/db conn)] |
