For the case 1, I think the better way is keep the transaction failed there.
For the case 2,  we could retry the compensation call if the
compensation method is idempotent.
For the case 3, there are something wrong with the processing, I think
it's better to suspend the transaction processing.

Willem Jiang

Twitter: willemjiang
Weibo: 姜宁willem

On Sat, Apr 18, 2020 at 12:18 AM Zhang Lei <coolbee...@gmail.com> wrote:
>
> Hi Team,
>
> Current, the following case will cause global transactions to suspend
>
> case 1. Global transaction timeout
> case 2. Compensate failed
> case 3. Unpredictable sequence of events
>
> Solution
>
> case 1: When subsequent events are received, it can resume to the state
> before suspension and continue to execute
> case 2: Playback the last event of the suspend global transactions by
> triggering in the Alpha UI, it can resume to the state before suspension
> and continue to compensate
> case 3: Do you have any suggestions? Or Still keep suspended.
>
>
> Best regards,
> Lei Zhang

Reply via email to