2010-02-11 1 views
4

Я изменил тайм-аут транзакции JTA из консоли администратора и установить до 300, даже после изменения он не говоря JTA сделка неожиданно откат (возможно, из-за тайм-аута) с:JTA исключение тайм-аут транзакции - WebLogic 10.X

weblogic.transaction.RollbackException: Transaction timed out after 181 seconds` 

Чтобы убедиться, является ли мои изменения (значение 300 тайм-аут) получил свое отражение в этой области или нет, я проверил в домене config.xml он получил отражение в 300

мой вопрос, есть ли другое место и мне нужно для обновления значения тайм-аута транзакции и необходимости перезапуска сервера?

Полный трассировки стека после исключения из сервера ниже:

 
Caused by: org.springframework.transaction.UnexpectedRollbackException: JTA transaction unexpectedly rolled back (maybe due to a timeout); nested exception is weblogic.transaction.RollbackException: Transaction 
timed out after 180 seconds 
BEA1-160A800A149091F72E5E 
    at org.springframework.transaction.jta.JtaTransactionManager.doCommit(JtaTransactionManager.java:1031) 
    at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:709) 
    at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:678) 
    at org.springframework.transaction.interceptor.TransactionAspectSupport.completeTransactionAfterThrowing(TransactionAspectSupport.java:359) 
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) 
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) 
    at $Proxy103.saveRegistryData(Unknown Source) 
    at gov.cms.pqri.arch.submission.registry.bean.RegDataAccessManager.persistRegistry(RegDataAccessManager.java:54) 
    ... 14 more 
Caused by: weblogic.transaction.RollbackException: Transaction timed out after 180 seconds 
BEA1-160A800A149091F72E5E 
    at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1818) 
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:333) 
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:227) 
    at weblogic.transaction.internal.TransactionManagerImpl.commit(TransactionManagerImpl.java:281) 
    at org.springframework.transaction.jta.JtaTransactionManager.doCommit(JtaTransactionManager.java:1028) 
    ... 22 more 
+0

Согласно консоли WebLogic, вам не нужно, чтобы перезагрузить сервер. Не могли бы вы предоставить полный стек? –

+0

после изменения застрявшей нити Максимальное время до 300 под серверами -> конфигурация -> настройка (вкладка) из консоли администратора, она обновляется и работает нормально. –

ответ

4

после изменения застрявший резьбы Максимальное время 300 под серверов -> Конфигурация -> Настройка (вкладка) из консоли администратора она становится обновлен и работает хорошо.

2

Я также столкнулся с этой проблемой и решил то же самое, поскольку это связано с транзакцией JTA, поэтому нам нужно увеличить тайм-аут JTA вместе с тайм-аутом для застрявшей максимальной нити. Нажмите на JTA с домашней домашней интернет-панели и увеличьте время ожидания JTA с 30(by default) to 300.

1

Мы столкнулись с той же проблемой в Weblogic 12.1.2. [JTA-транзакция неожиданно откат (возможно, из-за таймаута)] после всех расследований мы обнаружили основную причину проблемы. По-моему, это происходит из-за огромного процесса обработки данных и ближе к концу процесса. Если генерируется исключение, JTA откатывает данные, как ожидалось. Но это не дает деталей ошибки. В нашем случае это в основном связано с целостностью базы данных (например, мы пытаемся вставить данные столбца с меньшим размером, чем данные.)

Таким образом, это лучший способ исследовать журналы журналов db, а не увеличивать время затяжки Thread Max. Время максимальной загрузки может быть решением, но не подходящим решением для реального корпоративные системы.

Кроме того, этот вопрос обсуждался на another stackover link и hibernate jira issue

И решение предложил:

Это поведение по умолчанию реализации Weblogic JTA. Чтобы получить исключение корня , вы должны установить системное свойство weblogic.transaction.allowOverrideSetRollbackReason для true.

Одним из раствора добавьте эту строку в /bin/setDomainEnv.cmd:

set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.transaction.allowOverrideSetRollbackReason=true 

 Смежные вопросы

  • Нет связанных вопросов^_^