This week's giveaway is in the Android forum.
We're giving away four copies of Android Security Essentials Live Lessons and have Godfrey Nolan on-line!
See this thread for details.
The moose likes Websphere and the fly likes Weird MDB/JMS errors I believe linked to failed XA transaction... Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Products » Websphere
Bookmark "Weird MDB/JMS errors I believe linked to failed XA transaction..." Watch "Weird MDB/JMS errors I believe linked to failed XA transaction..." New topic

Weird MDB/JMS errors I believe linked to failed XA transaction...

Ryan Zezeski

Joined: Mar 13, 2005
Posts: 29
OK, I have opened up a PMR with IBM but figured it can't hurt to try my question here too. To make a long story short i'm getting JMS related errors during listener port startup for my MDBs. I believe the errors are related to a previously failed global transaction.

Here is the rundown... I am implementing clustering support for my comanies product for WAS We run on Solaris/Sparc, WAS ND and WAS BASE machines make up the cluster. Global security is enabled, Java 2 Security disabled. Using a Sun ONE external LDAP server to store credentials. This problem exists with embedded JMS, have not tested against full MQ series yet. I have a Topic for public events and a "internal" Queue for product specific events that only our app needs to listen for. We have several MDBs that listen to the Topic and Queue. I have NDM on one machine, and a federated Node on that machine, as well as a second federated node on another machine. Both have their own JMS/JDBC resources. We use jgroups to build logical clusters and for event logging fail over.

Anyways, so me and my Integratin Team manger are testing some new code inside the MDB. We launch our test from the "master" node (the one with both NDM and a federated Node). The master server starts kicking off the work, handeling the request. However, as an event is thrown to the Queue the "clone" Node's MDB is the one that picks it up. Because of an oversight in the code the MDB threw an uncaught null pointer exception, causing the MDB to stop and lots of other bad stuff.

My integration team manager goes back to the code and fixes the problem area and sends me the new ear. I redeploy and all that, reset all the servers, and then this is what I see:

Immediately it looks like a transaction problem to me. So i shutdown everyting, the Servers, the Node Agents, Deployment Manager. I then erase all tranlogs, and then bring everything back up. Guess what...still there!! It's only on the "clone" node too. The "master" starts up fine. Also note that the "clone" sserver listener ports startup, but after a minute or show these errors get thrown. Then the listener ports restart themselves, and then throw the error again. It just keeps looping itself.

I tried deleting the Cluster, all resources, basically did an uninstall and reinstall. The problem is still there. My best guess is when that null pointer was thrown in the MDB the first time something went really wrong with the XA transaction and that it is trying to finish itself. However, I have no clue how to manually finish it or cancel it besides deleting the folders found in <WAS_ROOT>/tranlog.

I did some tracing with the following strings but saw nothing obvious (of course I don't really know what i'm looking for).**

If anyone has ANY ideas please let me know. This problem is driving me nuts!

Java has 99 problems but a pointer ain't one
I agree. Here's the link:
subject: Weird MDB/JMS errors I believe linked to failed XA transaction...
Similar Threads
Problem in receiving message from MQ queue
MQJE001: Completion Code 2, Reason 2085
Listener Port in WSAD for Topic destination
WSAD5.1.3 remote MQv5.3 connection and listen using MDB
JMS Issue with WAS 5.1