Shreeni
Shreeni

Reputation: 295

websphere server stop causes inflight ejb transactions to rollback

I observe errors as below when Websphere server instance is stopped from admin console

Caused by: javax.ejb.TransactionRolledbackLocalException: ; nested exception is: javax.transaction.TransactionRolledbackException: Transaction is ended due to timeout at com.ibm.ws.Transaction.JTA.TranManagerImpl.completeTxTimeout(TranManagerImpl.java:576) at com.ibm.ws.Transaction.JTA.TranManagerSet.completeTxTimeout(TranManagerSet.java:625)

These are inflight txns during server stop. Increasing the timeouts from "Application servers->server->Transaction Service" does not seem to help.

Is this to do with the server quiesce timeouts? if yes is there a way to configure those.

Also the rollbacks are not observed when I "terminate" the server from the Admin Console, only observed when I "stop" the server.

Any ideas to debug this issue would be great.

Upvotes: 1

Views: 3527

Answers (1)

erloewe
erloewe

Reputation: 1349

What you want is probably Deployment for transactional high availability. The describe method is the only product feature that is available for finishing those transactions without getting actual errors.

What happens for you is that the WebSphere Application server gives each container some time to shut down. After the shutdown timeouts it will use force. The transactions get rolled back. Well, you could also change the heurestic policy to for instance COMMIT. That depends on whether it is better for your application that everything in the transaction gets lost or whether only the rest of the transaction gets lost.

Upvotes: 1

Related Questions