Как оправиться от тупиковых ситуаций в Message Driven Beans в GlassFish? - PullRequest
0 голосов
/ 05 апреля 2011

Я сталкиваюсь с тупиковой ситуацией при получении сообщений в пуле MDB в GlassFish.Если я получаю несколько сообщений, которые одновременно пытаются обновить один и тот же набор строк, MDB выдает исключение LockAcquisitionException.К сожалению, поставщик JMS GlassFish повторно доставляет сообщение, немедленно вызывая то же исключение.Я надеялся настроить JMS-провайдера на повторную доставку после некоторой задержки, но, похоже, это не поддерживается.Любые идеи о том, как я мог решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 07 апреля 2011

Вот ссылка на некоторую документацию Oracle по опциям конфигурации: http://download.oracle.com/docs/cd/E19798-01/821-1794/aeooq/index.html

endpointExceptionRedeliveryAttempts

Это позволит вам отлавливать ошибки.Затем вы могли бы реализовать MBean на конечной точке Fault / RME и добавить искусственные задержки

Но, похоже, в настоящее время нет способа отложить задержку повторения в GlassFish.

0 голосов
/ 07 апреля 2011

Посмотрели ли вы Настройка «задержки повтора» в серии MQ

А как насчет перехвата ошибки, ее спящего режима, а затем повторного выброса?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...