File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes EJB and other Java EE Technologies and the fly likes Transaction rolled back Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Transaction rolled back" Watch "Transaction rolled back" New topic

Transaction rolled back

manish gupta
Ranch Hand

Joined: Nov 06, 2005
Posts: 36
In my application MDB with container manage transaction,I am doing performence testing ,for this in my configuration connection pool size is 15 ,I am sending message in every 2 second from my clint program. but after two or three hour I am getting this error.Imn my application I am persisting the jms message in jms table.

Any body having idea why I am getting this error.

BEA-010065 Jul 2, 2007 8:16:39 PM IST myserver Warning EJB MessageDrivenBean threw an Exception in onMessage(). The exc
eption was:


BEA-010213 Jul 2, 2007 8:14:05 PM IST myserver Info EJB Message-Driven EJB: PMTCEJB's transaction was rolledback. Th
e transaction details are: Xid=BEA1-0908B70BBBFAED3D7FF3(311
64628),Status=Rolled back. [Reason=Unknown],numRepliesOwedMe
=0,numRepliesOwedOthers=0,seconds since begin=1,seconds left
igned=myserver),xar=JMS_PMTCJDBCMessageStore,re-Registered =
ordinatorURL=myserver+, XAR
esources={JMS_FileStore, weblogic.jdbc.wrapper.JTSXAResource
Impl, JMS_PMTCJDBCMessageStore},NonXAResources={})],Coordina

BEA-010065 Jul 2, 2007 8:11:40 PM IST myserver Warning EJB MessageDrivenBean threw an Exception in onMessage(). The exc
eption was:
Paul Sturrock

Joined: Apr 14, 2004
Posts: 10336

Looks like you are running out of memory, which is not too much of a suprise if you are doing performance testing. There are a plethora of reasons why it could be happening, from the very obvious (you haven't configured your JVM with enough memory) to the less obvious (your application has a memory leak).

One of the first things to note is its actually quite easy to write a performance test that breaks an application in an invalid way, by which I mean your test is actually using the application in an unrealistic way. For example a common one I see is people writing test scripts that try to log all N hundred users on simmultaneously, rather than ramping them up over time.

Without knowing a lot about your application and its architecture it is very difficult to offer much advice beyond general stuff. Check your test: is it valid? Check your JVM configuration: does it have enough memory? If its a long running JVM, are you using the server configuration (if it is HotSpot we are talking about)? Tweek your JVM with things like GC logging on to see what is going on (see here for useful ones). Doing this last one will begin to hint a memory leak if there is one.

JavaRanch FAQ HowToAskQuestionsOnJavaRanch
I agree. Here's the link:
subject: Transaction rolled back
It's not a secret anymore!