KamoCRM

Indexing a listed page can no longer fail the listing

FixEmailService
Spegnimento
28 settembre 2026 alle ore 12:26 UTC
Autore
Kamo
Impegno
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)

Tutte le modifiche

Come quello che vedi la spedizione?

Tutto questo arriva nel vostro spazio di lavoro da solo. Iniziare sul piano gratuito e leggere di nuovo questa pagina in un mese.

Inizia gratis per sempreVisualizza il prezzo