Trainer must not clobber its own claim or an operator's pause

FixSecurityService
Shipped
July 15, 2026 at 3:29 AM UTC
Author
Kamo
Commit
37b266d

After the atomic claim() bulk-updates the row to RUNNING, mirror that in the in-memory entity — the pool thread has no open session, so a later full-row save would otherwise merge the pre-claim status back and undo the lock. In-loop progress now goes through the status-preserving saveProgress(); a 0-row result means the run was paused or reclaimed, so the walk stops and leaves that status in place.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing