KamoCRM

Mark payload outcomes by column, not through the entity

FixDaemonService
Shipped
20 ஆகஸ்ட், 2026 அன்று 11:19 PM UTC
Author
Kamo
Commit
ea99e0a

payloadRepo.save() on a detached payload makes Hibernate walk its graph — organization pulls in org_domains — and that read lands in a transaction that has already written, which YugabyteDB rejects with 40001 "Restart read required". The outcome then never persisted, the payload stayed RECEIVED, and the next run imported a lead that already existed. Roughly 1% of rows on a live 13k batch. markPayloadOutcome writes the three columns this needed and nothing else.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing