This commit is contained in:
Andrey Antukh 2025-08-13 11:32:30 +02:00
parent a4833f95b5
commit b2abd308ca

View File

@ -555,8 +555,10 @@
[& {:keys [max-jobs
rollback?
max-chunks
chunk-size
proc-fn]
:or {max-chunks Long/MAX_VALUE
chunk-size 100
rollback? true}
:as opts}]
@ -565,6 +567,13 @@
max-chunks (max max-chunks max-jobs)
processed (atom 0)
opts (-> opts
(assoc :chunk-size chunk-size)
(dissoc :rollback?)
(dissoc :proc-fn)
(dissoc :max-jobs)
(dissoc :max-chunks))
start-job
(fn [jid]
(l/dbg :hint "start job thread" :jid jid)
@ -587,6 +596,10 @@
:max-jobs max-jobs
:max-chunks max-chunks)
(add-watch processed ::watch
(fn [_ _ _ v]
(l/dbg :hint "total chunks processed" :chunks v :items (* chunk-size v))))
(try
(let [jobs (->> (range max-jobs)
(map (fn [jid] (px/fn->thread (partial start-job jid))))