[ 
https://issues.apache.org/activemq/browse/AMQ-1265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Bram resolved AMQ-1265.
------------------------------

    Resolution: Cannot Reproduce

lock on client applciation while consuming another queue's messages introduced 
problem

> client setMessageListener for queue hangs when one queue contains 50+ 
> messages and after broker restart setMessageListener calls for 4 queue are 
> called
> -------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-1265
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1265
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: JMS client, Transport
>    Affects Versions: 4.0.1, 4.0.2, 4.1.1
>         Environment: 4 queues:
> SMF.OUT
> ID.OUT
> MD.OUT
> MKLIST.OUT
> client side: 
> Solaris - SunOS hostname 5.10 Generic_118833-33 sun4u sparc SUNW,Sun-Fire-V215
> java version:
> java version "1.5.0_11"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
> Java HotSpot(TM) Server VM (build 1.5.0_11-b03, mixed mode)
> server: tested with same as client and windows XP SP2
> java version "1.5.0_11"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
> Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode)
> both client and server: ActiveMQ version 4.0.1 - 4.0.2 - 4.1.1
>            Reporter: Daniel Bram
>
> A JMS client connections hangs when subscribing to queue that is filled with 
> a small number of messages: 50+.
> The messages have been produced before shutting down the message broker 
> (bin\activemq.bat process), at that time the queue consumer was not connected.
> Subscribing to 4 queues produces the problem.  When the queue is cleared, the 
> problem goes away (by subscribing to only one queue for example).
> ActiveMQMessageConsumer.setMessageListener
> freezes on line 329
> session.stop();
> IntelliJ debug screen: (at the next step the wait statement freezes the 
> client connection).
> [EMAIL PROTECTED], priority=5, in group 'main', status: 'RUNNING'
>         shutdown():87, PooledTaskRunner.java
>         stop():113, ActiveMQSessionExecutor.java
>         stop():1469, ActiveMQSession.java
>         setMessageListener():329, ActiveMQMessageConsumer.java
>         registerHandler():112, AbstractJMSMessagingServiceImpl.java
>         registerHandlerByAlias():134, ActiveMQMessagingServiceImpl.java
>         initMessagingHandler():412, AdapterDeployer.java
>         initAdapterHandlers():341, AdapterDeployer.java
>         run():139, AdapterDeployer.java
>         call():442, Executors.java
>         run():176, FutureTask.java
>         access$101():138, ScheduledThreadPoolExecutor.java
>         run():237, ScheduledThreadPoolExecutor.java
>         runWorker():987, ThreadPoolExecutor.java
>         run():528, ThreadPoolExecutor.java
>         run():595, Thread.java
> When watching the debug session, the boolean variable "iterating" is set to 
> true in PooledTaskRunner.java for the blocking setMessageListener call.  The 
> other non blocking setMessageListeners have their iteration boolean set to 
> false.  Does the fact that one queue contains message set this to true maybe ?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to