KamoCRM

A 40001 saat mempersiapkan pemberitahuan penyelesaian tidak lagi menggulung tanda tangan kembali

FixESigService
Diantar
8 November 2026 pukul 00.45 UTC
Pengarang
Kamo
Kommit
ae2e462

Tekan pertama Finish gagal dengan 500 dan upaya ulang berhasil. Selesai pemberitahuan disusun di dalam transaksi penandatanganan di bawah catch-all: mereka membaca (pengirim, template, copy-link re-mint) menemui YugabyteDB SQLState 40001 right setelah baris tanda tangan ditulis, repositori menandai berbagi transaksi hanya rollback, tangkapan menelannya, dan commit melemparkan UnexpectedRollbackException - mengembalikan seluruh tanda tangan. - EsignNoticeComposer (bean baru): semua notifikasi kerja DB, REQUIRES_NEW + @RetryOnDbConflict, baca ulang oleh id, jalankan dari afterCommit. EsignNotificationService sekarang hanya menangkap id, jadwal, dan kirim. berlaku untuk selesai, dekodir, pemberitahuan dibatalkan dan berakhir. - submit () dan decoder () adalah @RetryOnDbConflict (penasihat pustaka bersama, di luar the transaction), sehingga setiap 40001 dicoba lagi dalam sebuah transaksi baru. - Fail-soft flatten / sertifikat dan penggunaan rekaman tangkapan sekarang melempar kembali a konflik transient atau keadaan hanya rollback (DbConflicts.rethrowIfDoomed) alih-alih menelannya ke dalam commit yang beracun. - SigningSurvivesDbConflictTest mereproduksi pengecualian tertelan rollback pada Proksi transaksi nyata dan membuktikan pemberitahuan dan mengirimkan selamat dari 40001.

Semua perubahan

Seperti apa yang Anda lihat pengiriman?

Semuanya tiba di ruang kerja Anda sendiri. Mulai dengan rencana gratis dan baca halaman ini lagi dalam sebulan.

Mulai Bebas SelamanyaLihat Harga