Rob,
Using the embedded broker but couldn't locate the thread holding the lock. The problem is that it is blocking the client thread. If i use something like async=true then will the delivery happen in a separate thread?

cheers
</jima>
Rob Davies wrote:
the client is waiting for a response from the broker - what's the broker doing whilst you are doing this ?

cheers,

Rob

'Go Get Integrated -  ride the Camel! - http://activemq.apache.org/camel/'
http://rajdavies.blogspot.com/



On Sep 11, 2007, at 11:27 PM, Jim Alateras wrote:

I am using activemq 5.0-SNAPSHOT with a current project and have just come across a situation where a thread blocks indefinitely trying to publish a message. It happens during the session commit

The method ActiveMQDispatcherClient.dispatch is synchronized.

Here is the stack trace.

Thread [pool-5-thread-1] (Suspended) Unsafe.park(boolean, long) line: not available [native method] LockSupport.park() line: 118 AbstractQueuedSynchronizer$ConditionObject.await() line: 1767 ArrayBlockingQueue<E>.take() line: 341 FutureResponse.getResult() line: 40 ResponseCorrelator.request(Object) line: 76 ActiveMQConnection.syncSendPacket(Command) line: 1168 TransactionContext.commit() line: 259 ActiveMQSession.commit() line: 491 DefaultEnqueueStrategy<T>.dispatch(Session, MessageProducer, DispatcherQueue, List<T>) line: 83 ActiveMQDispatcherClient.dispatch(List<T>) line: 195 Hub.dispatchObservations(List<DeviceFieldObservation>) line: 1004 ZoneFacadeImpl.observationsMade(List) line: 785 DeviceFieldObservationVendorImpl.vendObservations(List) line: 183 DeviceFieldObservationVendorImpl$StatusEventHandler.notifyEvent(DeviceEvent) line: 687 EventManager$EventDeliverer.run() line: 174 Executors$RunnableAdapter.call() line: 442 ScheduledThreadPoolExecutor$ScheduledFutureTask(FutureTask).run() line: 176 ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor$ScheduledFutureTask) line: 102 ScheduledThreadPoolExecutor$ScheduledFutureTask.run() line: 215 ThreadPoolExecutor$Worker.runTask(Runnable) line: 665 ThreadPoolExecutor$Worker.run() line: 690 Thread.run() line: 613

cheers
</jima>



Reply via email to