activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marina (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (AMQ-5109) "Soft deadlock" in TransportConnection causes degraded performance in certain situations
Date Fri, 04 Apr 2014 15:44:17 GMT

    [ https://issues.apache.org/jira/browse/AMQ-5109?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13960066#comment-13960066
] 

Marina edited comment on AMQ-5109 at 4/4/14 3:43 PM:
-----------------------------------------------------

We have checked ConnectionPerMessageTest and it shows the soft deadlock described in this
bug. Although the use-case is bad in AMQ-4964, the deadlock is in the transport connection
and it can affect performance in other usecases.
The debugger reveals that, one of the transports in VM transports pair needs the other one
to stop. If the second thread is busy and the first thread manages to receive a write lock
before the second one, then the second tread cannot shutdown, because it cannot acquire the
lock. They both wait for each other until the specified timeout period elapses ( 1 second
in runable.wait(timeout)). This problem is resolved when session gets closed. 


was (Author: lurida):
We have checked ConnectionPerMessageTest and it shows the soft deadlock described in this
bug. Although the use-case is bad in AMQ-4964, the deadlock is in the transport connection
and it can affect performance in other usecases.
The debugger reveals that, one of the transports in VM transports pair needs the other one
to stop. If the second thread is busy and the first thread manages to receive a write lock
before the second one, then the second tread cannot shutdown, because it cannot acquire the
lock. They both wait for each other until the specified timeout period elapses ( 1 second
in runable.wait(timeout);). This problem is resolved when session gets closed. 

> "Soft deadlock" in TransportConnection causes degraded performance in certain situations
> ----------------------------------------------------------------------------------------
>
>                 Key: AMQ-5109
>                 URL: https://issues.apache.org/jira/browse/AMQ-5109
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.9.0
>         Environment: HP-UX 11.31, RHEL 5/6. HP JDK 6/7, Oracle JDK 6/7
>            Reporter: Nikolay Martynov
>            Priority: Minor
>              Labels: patch
>         Attachments: TransportConnection.java.patch
>
>
> "Soft" deadlock occurres due to async stopping in case of starting/stopping lots of client
connections (using jms template with standard connection factory, for example). ActiveMQ BrokerService
gets frozen for 1 second trying to acquire the lock. As a result, already poor performance
in case of unpooled connection factory further degrades by around 50%.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message