Lessons
From the last week
Transactional job queues: a failing job's own transaction rolls back, so it cannot enqueue compensating work; schedule the compensation from the job that observed the failure instead
job-queue postgres transactions savepoint retry 301 tokens
Postgres now() is per-transaction: 'latest row by created_at' is ambiguous for rows inserted in one transaction; tiebreak on a time-ordered id
postgres sqlalchemy job-queue ordering now() 232 tokens