Мы используем комбинацию Oracle 11G и JDK1.8. В нашем приложении мы используем XAConnection, XAResource для транзакции БД. т. е. распределенные транзакции.
В некоторых случаях нам нужно убить наш процесс Java, чтобы остановить приложение. После уничтожения, если мы перезапустим наше приложение, мы получим следующее исключение при выполнении транзакции БД.
java.sql.SQLException: ORA-02049: timeout: distributed transaction
waiting for lock
После этого в течение нескольких часов мы не можем использовать наше приложение, пока не будет снята блокировка.
Может ли кто-нибудь дать мне какое-нибудь решение, чтобы мы могли продолжить работу, а не ждать снятия блокировки.
Я пробовал следующий вариант:
а) Получен SID и завершение сеанса с помощью команды alter. После этого блокировка таблицы также не снимается.
Я имею дело с очень небольшим объемом данных.