Hi Bruce,

I found the problem, it is fixed in CVS.
It should be availble from pserver in 24 hours time
or the nightly snapshot if I haven't missed the snapshot time.

The fix is in org.jboss.mq.server.BasicQueue.
It was a race condition. Nothing to do with transactions.

Thanks for testing this, I'm going to leave my machine running 
the test overnight to confirm the fix.

Regards,
Adrian

On Thu, 2003-10-02 at 18:40, Adrian Brock wrote:
> On Thu, 2003-10-02 at 05:35, Bruce Slawson wrote:
> > Adrian,
> > 
> > Looks like I'm not crazy after all.  I was able to recreate the problem 
> > running your code.  It looks like it has nothing to do with 
> > stopping/starting the JMS container invoker.  This is what I did to 
> > recreate it.
> > 
> > I built your test case and created a single message using "ant send".  
> > This causes a single message to thrash back and forth between the main 
> > queue and the DLQ.  All is good at this point and it will run indefinitely.
> > 
> > The problem occurs after additional load is put on JBoss.  What happens 
> > is that the message just "disappears" and the logging messages stops.  
> > If another app is running a mildly intensive operation or something 
> > significant is hot deployed while the thrashing is occurring, it just 
> > stops.  This is all the indication I get when a finder method was called 
> > that returned a dozen or so entity beans.  No other messages appear 
> > after this.
> > 
> > 2003-10-01 16:39:46,669 INFO  [test.mdb.MainMDBBean] 
> > ID:23-10650515866582586 null
> > 2003-10-01 16:39:46,674 INFO  [test.mdb.MainMDBBean] 
> > ID:23-10650515866582586 1
> > 2003-10-01 16:39:46,695 INFO  [test.mdb.MainMDBBean] 
> > ID:23-10650515866582586 2
> > 2003-10-01 16:39:46,700 WARN  [org.jboss.ejb.plugins.jms.DLQHandler] 
> > Message resent too many times; sending it to DLQ; message 
> > id=ID:23-10650515866582586
> > 2003-10-01 16:39:46,703 INFO  [test.mdb.DLQMDBBean] ID:2-10650515867013092
> > 2003-10-01 16:39:46,703 DEBUG 
> > [org.jboss.resource.adapter.jms.JmsSessionFactoryImpl] 
> > [EMAIL PROTECTED], 
> > [EMAIL PROTECTED], 
> > isTopic=false
> > 2003-10-01 16:39:46,704 DEBUG 
> > [org.jboss.resource.adapter.jms.JmsSession] Closing session
> > 2003-10-01 16:39:46,704 DEBUG 
> > [org.jboss.resource.adapter.jms.JmsManagedConnection] Sending connection 
> > event: 1
> > 2003-10-01 16:39:46,713 DEBUG [org.jboss.mq.SpySession] Session closing.
> > 2003-10-01 16:39:46,716 INFO  [test.mdb.MainMDBBean] 
> > ID:23-10650515867042587 null
> > 2003-10-01 16:39:46,722 INFO  [test.mdb.MainMDBBean] 
> > ID:23-10650515867042587 1
> > 2003-10-01 16:39:46,729 INFO  [test.mdb.MainMDBBean] 
> > ID:23-10650515867042587 2
> > 2003-10-01 16:39:46,734 WARN  [org.jboss.ejb.plugins.jms.DLQHandler] 
> > Message resent too many times; sending it to DLQ; message 
> > id=ID:23-10650515867042587
> > 2003-10-01 16:39:46,743 DEBUG [org.jboss.mq.SpySession] Session closing.
> > 2003-10-01 16:39:46,744 INFO  [test.mdb.DLQMDBBean] ID:2-10650515867353093
> > 2003-10-01 16:39:46,744 DEBUG 
> > [org.jboss.resource.adapter.jms.JmsSessionFactoryImpl] 
> > [EMAIL PROTECTED], 
> > [EMAIL PROTECTED], 
> > isTopic=false
> > 2003-10-01 16:39:46,744 DEBUG 
> > [org.jboss.resource.adapter.jms.JmsSession] Closing session
> > 2003-10-01 16:39:46,744 DEBUG 
> > [org.jboss.resource.adapter.jms.JmsManagedConnection] Sending connection 
> > event: 1
> > 2003-10-01 16:42:48,201 DEBUG 
> > [org.jboss.resource.connectionmanager.IdleRemover] run: IdleRemover 
> > notifying pools, interval: 450000
> > 2003-10-01 16:42:48,203 DEBUG [org.jboss.mq.SpySession] Session closing.
> > 2003-10-01 16:42:48,204 DEBUG [org.jboss.mq.SpySession] Session closing.
> > 2003-10-01 16:42:48,204 DEBUG [org.jboss.mq.SpySession] Session closing.
> > 2003-10-01 16:42:48,204 DEBUG [org.jboss.mq.SpySession] Session closing.
> > 
> > 
> > Restarting JBoss usually causes the message to reappear and the 
> > thrashing to continue.  I am running JBoss 3.2.2RC4, Java 1.4.1_01, Mac 
> > OS X 10.2.6, PowerBook G4 1Ghz, 1 GB RAM.  Hardware resources shouldn't 
> > be an issue.
> > 
> 
> I managed to reproduce this after the message bounced backwards and
> forwards for an hour. (I've set the deployment scanner to ScanPeriod=0
> which means it is continually looping down the deploy/ folder looking
> for new deployments - at "idle" jboss uses 95% cpu).
> 
> It is not a deadlock.
> 
> I've enabled TRACE logging for org.jboss.mq but it hasn't reoccured
> after 3 hours. Can you try the same thing?
> I'm trying two messages to see if this makes it more likely.
> 
> It sounds like the tranaction failed to commit, rebooting jboss
> causes jdbc2 to recover (rollback) the incomplete transaction.
> 
> Regards,
> Adrian
> 
> > Bruce
> > 
-- 
xxxxxxxxxxxxxxxxxxxxxxxx 
Adrian Brock
Director of Support
Back Office
JBoss Group, LLC 
xxxxxxxxxxxxxxxxxxxxxxxx 



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to