Status: IN
`Participant.recover()` returns a list of in-doubt transaction IDs but cannot commit or abort them; only the coordinator holds the decision, so participants remain locked until `Coordinator.recover()` re-sends it.
Source: entries/2026/05/29/topic-2pc-blocking-problem.md
JSON