As discussed, a nicer solution is to invoke StaleTransactionCleanupService.cleanTxForWhichTheOwnerLeft here and make StaleTransactionCleanupService not respond to TopologyChanged events. This would also guarantee that the transactions for which originator have left are always cleaned up properly and simplify the logic.