2009-11-20 8 views
1

Je constate des erreurs comme ci-dessous lorsque l'instance de serveur Websphere est arrêté depuis la console d'administrationarrêt du serveur Websphere provoque des transactions ejb Inflight rollback

Causée par: javax.ejb.TransactionRolledbackLocalException:; l'exception imbriquée est: javax.transaction.TransactionRolledbackException: la transaction est terminée en raison du délai d'attente at com.ibm.ws.Transaction.JTA.TranManagerImpl.completeTxTimeout (TranManagerImpl.java:576) at com.ibm.ws.Transaction.JTA .TranManagerSet.completeTxTimeout (TranManagerSet.java:625)

Ce sont les txns d'inflight pendant l'arrêt du serveur. L'augmentation des délais d'attente depuis "Serveurs d'applications-> Serveur-> Service de transactions" ne semble pas utile.

Cela concerne-t-il les délais d'attente du serveur? Si oui, existe-t-il un moyen de les configurer?

Les annulations ne sont pas non plus observées lorsque je "termine" le serveur à partir de la console d'administration, uniquement observé lorsque j'arrête le serveur.

Toutes les idées pour déboguer ce problème seraient géniales.

Répondre

1

Ce que vous voulez est probablement Deployment for transactional high availability. La méthode describe est la seule fonctionnalité de produit disponible pour terminer ces transactions sans avoir d'erreurs réelles. Ce qui se passe pour vous, c'est que le serveur WebSphere Application laisse à chaque conteneur le temps de s'arrêter. Après les délais d'arrêt, il utilisera la force. Les transactions sont annulées. Eh bien, vous pouvez également changer le heurestic policy pour par exemple COMMIT. Cela dépend s'il est préférable pour votre application que tout soit perdu dans la transaction ou que seul le reste de la transaction soit perdu.

Questions connexes