Заставить MSDTC потерять распределенную транзакцию SQLServer - PullRequest
0 голосов
/ 03 ноября 2010

При закрытии приложения JavaEE на основе WebSphere для моего проекта распределенные транзакции иногда остаются активными в базе данных SQLServer 2005.Они сохраняют свои замки навсегда и должны быть убиты вручную.Как правило, они описываются в этой очень хорошей статье .

. В статье рассказывается о том, как координатор транзакций не может координировать участников распределенной транзакции, и поэтому помечает транзакцию с идентификатором процесса-2.

Учитывая, что мы сталкиваемся с этой проблемой нечасто, но это всегда происходит, когда мы закрываем приложение, я не уверен, что это сбой MSDTC.Скорее всего, это как-то связано с WebSphere и тем, как он завершает приложения.

Я бы хотел это проверить.Но я не могу надежно заставить это произойти.

Есть ли способ заставить MSDTC осиротеть распределенную транзакцию SQLServer?

1 Ответ

0 голосов
/ 03 ноября 2010

Мой вопрос вводил в заблуждение, потому что я не был уверен, в чем проблема на самом деле. Я подозреваю, что MSDTC помогает WebSphere заключать сделки с MQ и SQLServer. Проблема возникает, когда мы выполняем нечистое завершение работы сервера WAS, и часть нашего приложения, предоставляемая поставщиком, пытается выполнить какую-то очистку и завершается неудачей.

Я подозреваю, что этот вопрос никому не нужен (если только он не использует диспетчер сообщений Misys в WebSphere в Windows), поэтому, извините, дорогой читатель, за то, что вы потратили ваше время.

...