Give each organization a real transaction boundary

FixBillingService
Ya
9 Agosti 2026, 04:46 UTC
Mwandishi
Kamo
Ahadi ya
cfdf8f7

StorageSnapshotSweep.catchUp carried @Transactional(REQUIRES_NEW) and was called from sweep() on the same bean. Spring applies @Transactional through a proxy, so a self-call bypasses it entirely — the annotation described a boundary that did not exist, and the guarantee it was there for (one organization's failure cannot affect the rest) was resting on nothing. Moves the per-organization work into OrgStorageSnapshotWriter so the sweep calls across a bean boundary and the boundary is real. Also drops the per-page-load scan for the latest snapshot date in favour of the repository's MAX query.

Mabadiliko yote

Je, unaona nini kuhusu usafiri?

Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.

Kuwa Huru MileleMtazamo wa bei