Почему исключение XAException из XAResource по-прежнему не позволяет зафиксировать транзакцию? - PullRequest
1 голос
/ 23 января 2011

Я пробую кое-что с JOTM и у меня есть вопросы общего назначения о том, как все работает. Я перечислил последовательность событий, чтобы получить окончательное резюме того, что происходит.

  1. создать тх
  2. подключить ресурс
  3. tx.commit
  4. resource.start
  5. resource.end выдает XA EXCEPTION
  6. resource.commit

Даже если resource.end выдает исключение XAException, фиксация tx все равно будет работать, что кажется мне неправильным. Какой смысл бросать исключение, если оно не помечает tx как откат ...

Все ли менеджеры tx работают так или же вызов XAException приводит к сбою tx?

Ответы [ 2 ]

2 голосов
/ 24 января 2011

Поведение TM зависит не только от существования XAException, но и от кода ошибки XAException. Любой из (соответствующих спецификации) кодов XA_RB ∗, выданных с конца, должен вызвать откат.

0 голосов
/ 28 июля 2011

В моем понимании XA ВСЕ виды исключений XAException, возникающие во время подготовки, ДОЛЖНЫ приводить к откату транзакции XA.

НТН.

Спасибо, Нитин

...