KamoCRM

Indexing a listed page can no longer fail the listing

FixEmailService
Expediere
28 septembrie 2026 la 12:26 UTC
Autor
Kamo
Comite
122e43d

recordSyncedPage was @Transactional and caught every exception of its own. The index repositories join the caller's transaction, so a write that met a concurrent one (Yugabyte 40001: a read restart, or the indexer storing the same new message) marked it rollback-only on the way out; the catch could not clear that, and the commit threw UnexpectedRollbackException past it into EmailController.listMessages, which answered 500 with the page of mail already in hand. The rows are now written in a transaction this method opens and ends before its catch, retried on a database conflict by TransientDbRetry. The Redis checkpoint is taken only after that commit: written inside the transaction, a failed commit left it vouching for rows, and flags, that were rolled back. (SP99 T6)

Toate modificările

Ca ceea ce vezi de transport maritim?

Toate acestea ajung în spațiul de lucru pe cont propriu. Începeți cu planul gratuit și citiți această pagină din nou într-o lună.

Pornește gratuit pentru totdeaunaVezi prețurile