send hangs using vm://

View: New views
3 Messages — Rating Filter:   Alert me  

send hangs using vm://

by Dan Tran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Hello, I have an embedded AMQ with 2 clients using vm:// and tcp:// respectively.  The tcp://client mostly used to send lots of messages to the vm:// client.  The vm://client periodically sends control massages to tcp:// client.

The issue I am facing right now is the send operation from vm:// client hangs indefinitely when the broker in is under stress processing messaging sending from tcp:// client. It continues to hang when I stop the tcp:// client and all of its messages are consumed.

here is the stack trace

Daemon Thread [Thread-14] (Suspended)
Unsafe.park(boolean, long) line: not available [native method]
LockSupport.park(Object) line: 158
AbstractQueuedSynchronizer$ConditionObject.await() line: 1925
ArrayBlockingQueue<E>.take() line: 317
FutureResponse.getResult() line: 40
ResponseCorrelator.request(Object) line: 80
ActiveMQConnection.syncSendPacket(Command) line: 1233
ActiveMQSession.send(ActiveMQMessageProducer, ActiveMQDestination, Message, int, int, long, MemoryUsage, int) line: 1659
ActiveMQMessageProducer.send(Destination, Message, int, int, long) line: 227
ActiveMQMessageProducer(ActiveMQMessageProducerSupport).send(Message) line: 241
JmsTemplate.doSend(MessageProducer, Message) line: 597
JmsTemplate.doSend(Session, Destination, MessageCreator) line: 574
JmsTemplate$4.doInJms(Session) line: 551
JmsTemplate.execute(SessionCallback, boolean) line: 471
JmsTemplate.send(String, MessageCreator) line: 548
OracleSGAAgentProxy(AbstractAsyncAgentProxy).sendMessageToAgent(String) line: 92
OracleSGAAgentProxy(AbstractAsyncAgentProxy).pingAgent() line: 147

My configuration is a typical default settings.

is there a work around?  is there a way for me to set some timeout at ArrayBlockingQueue<E>.take() ??

This post also is at https://issues.apache.org/activemq/browse/AMQ-1375

sorry about the noise

Any help is greatly appreciated.


-Dan

Re: send hangs using vm://

by Dan Tran :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Any one with an answer for this question?   from reading activemq doc and forum, the lockup is understandable, how it what it does not make sense is that it is still locked up when there only one client left.

Thanks

-dan

Dan Tran wrote:
Hello, I have an embedded AMQ with 2 clients using vm:// and tcp:// respectively.  The tcp://client mostly used to send lots of messages to the vm:// client.  The vm://client periodically sends control massages to tcp:// client.

The issue I am facing right now is the send operation from vm:// client hangs indefinitely when the broker in is under stress processing messaging sending from tcp:// client. It continues to hang when I stop the tcp:// client and all of its messages are consumed.

here is the stack trace

Daemon Thread [Thread-14] (Suspended)
Unsafe.park(boolean, long) line: not available [native method]
LockSupport.park(Object) line: 158
AbstractQueuedSynchronizer$ConditionObject.await() line: 1925
ArrayBlockingQueue<E>.take() line: 317
FutureResponse.getResult() line: 40
ResponseCorrelator.request(Object) line: 80
ActiveMQConnection.syncSendPacket(Command) line: 1233
ActiveMQSession.send(ActiveMQMessageProducer, ActiveMQDestination, Message, int, int, long, MemoryUsage, int) line: 1659
ActiveMQMessageProducer.send(Destination, Message, int, int, long) line: 227
ActiveMQMessageProducer(ActiveMQMessageProducerSupport).send(Message) line: 241
JmsTemplate.doSend(MessageProducer, Message) line: 597
JmsTemplate.doSend(Session, Destination, MessageCreator) line: 574
JmsTemplate$4.doInJms(Session) line: 551
JmsTemplate.execute(SessionCallback, boolean) line: 471
JmsTemplate.send(String, MessageCreator) line: 548
OracleSGAAgentProxy(AbstractAsyncAgentProxy).sendMessageToAgent(String) line: 92
OracleSGAAgentProxy(AbstractAsyncAgentProxy).pingAgent() line: 147

My configuration is a typical default settings.

is there a work around?  is there a way for me to set some timeout at ArrayBlockingQueue<E>.take() ??

This post also is at https://issues.apache.org/activemq/browse/AMQ-1375

sorry about the noise

Any help is greatly appreciated.


-Dan

Re: send hangs using vm://

by rajdavies :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Dan,

can you try the latest snapshot ? - this looks like you've hit a  
resource limit (memory) and/or a bug

thanks,

Rob

On 20 Jul 2009, at 02:42, Dan Tran wrote:

>
>
> Any one with an answer for this question?   from reading activemq  
> doc and
> forum, the lockup is understandable, how it what it does not make  
> sense is
> that it is still locked up when there only one client left.
>
> Thanks
>
> -dan
>
>
> Dan Tran wrote:
>>
>>
>> Hello, I have an embedded AMQ with 2 clients using vm:// and tcp://
>> respectively.  The tcp://client mostly used to send lots of  
>> messages to
>> the vm:// client.  The vm://client periodically sends control  
>> massages to
>> tcp:// client.
>>
>> The issue I am facing right now is the send operation from vm://  
>> client
>> hangs indefinitely when the broker in is under stress processing  
>> messaging
>> sending from tcp:// client. It continues to hang when I stop the  
>> tcp://
>> client and all of its messages are consumed.
>>
>> here is the stack trace
>>
>> Daemon Thread [Thread-14] (Suspended)
>> Unsafe.park(boolean, long) line: not available [native method]
>> LockSupport.park(Object) line: 158
>> AbstractQueuedSynchronizer$ConditionObject.await() line: 1925
>> ArrayBlockingQueue<E>.take() line: 317
>> FutureResponse.getResult() line: 40
>> ResponseCorrelator.request(Object) line: 80
>> ActiveMQConnection.syncSendPacket(Command) line: 1233
>> ActiveMQSession.send(ActiveMQMessageProducer, ActiveMQDestination,
>> Message, int, int, long, MemoryUsage, int) line: 1659
>> ActiveMQMessageProducer.send(Destination, Message, int, int, long)  
>> line:
>> 227
>> ActiveMQMessageProducer(ActiveMQMessageProducerSupport).send(Message)
>> line: 241
>> JmsTemplate.doSend(MessageProducer, Message) line: 597
>> JmsTemplate.doSend(Session, Destination, MessageCreator) line: 574
>> JmsTemplate$4.doInJms(Session) line: 551
>> JmsTemplate.execute(SessionCallback, boolean) line: 471
>> JmsTemplate.send(String, MessageCreator) line: 548
>> OracleSGAAgentProxy
>> (AbstractAsyncAgentProxy).sendMessageToAgent(String)
>> line: 92
>> OracleSGAAgentProxy(AbstractAsyncAgentProxy).pingAgent() line: 147
>>
>> My configuration is a typical default settings.
>>
>> is there a work around?  is there a way for me to set some timeout at
>> ArrayBlockingQueue<E>.take() ??
>>
>> This post also is at https://issues.apache.org/activemq/browse/AMQ-1375
>>
>> sorry about the noise
>>
>> Any help is greatly appreciated.
>>
>>
>> -Dan
>>
>
> --
> View this message in context: http://www.nabble.com/send-hangs-using-vm%3A---tp24301370p24562740.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>