Engagez le drapeau traité avec l'argent écrit, pas en avant

FixBillingService
Shipped
26 août 2026 à 01:59 UTC
Author
Kamo
Commit
2945f3d

b) Il s'agissait d'un traité, le cas échéant, il a commis L'argent de l'utilisateur écrit était encore non engagé dans l'extérieur suspendu transactionnelle. JpaTransactionManager ne chasse pas une persistance suspendue le contexte, de sorte que le engagement intérieur a atterri avant le SQL en attente de l'extérieur. A échec de la phase d'engagement - la contrainte unique de AccountInvoice sur stripe-invoice-id, son NON NULL FK sur account-uid, ou une ingestion avalée IllegalArgumentException in SubscriptionMemberService.ajouter empoisonnement partagé opération -- puis a roulé l'argent en écriture et laissé l'événement marqué. Stripe, le ré-arpreint, donc l'écriture était LOST, et il n'a même pas atteint le Une requête d'événement de poison parce que traitée était vraie. markProcessed joint maintenant la transaction extérieure, de sorte qu'un rollback prend le drapeau avec elle et la rangée reste revendiquée mais non traitée, qui est ce qui Il existe à la surface. Réclamation et marqueFaied conserver REQUISE: la créance doit survivre à un refoulement ou chaque retour à l'état d'urgence ressemble à un la première livraison, et le détail d'erreur doit survivre au rollback qu'il décrit. Il renforce également trois affirmations de texte source qu'une enquête sur les mutations a vaincu: la porte 0 pourrait être inversée à 1, la revendication pourrait être emballée dans un conditionnellement pendant que l'ordre d'index passait toujours, et la suppression du post-commutateur mark Appel traité a été masqué par le site d'appel à retour anticipé. Trouvé par une révision contradictoire à trois lentilles; 16 de ses 23 conclusions ont été réfutées.

All changes

Comme ce que tu vois expédier ?

Chacune de ces mises à jour atterrit automatiquement dans votre espace de travail. Commencez gratuitement et regardez-le grandir semaine après semaine.

Commencez gratuitement pour toujoursPrix de visualisation