Jean-Louis Monteiro created AMQ-9512:
----------------------------------------

             Summary: Latencies with large synchrized blocks in JDBC 
persistence adapter
                 Key: AMQ-9512
                 URL: https://issues.apache.org/jira/browse/AMQ-9512
             Project: ActiveMQ Classic
          Issue Type: Bug
            Reporter: Jean-Louis Monteiro
         Attachments: stack-1, stack-2, stack-3, stack-4, stack-5

When running ActiveMQ with a JDBC Persistence Adapter, I'm facing slow or 
irresponsive situations with ActiveMQ.

I spotted (maybe badly) this one: 
[https://github.com/apache/activemq/blob/2f40261362bb830899f7f369a731b446f795a627/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/JDBCTopicMessageStore.java#L262]

Here are a couple of thread dumps at different moments that can demonstrate the 
situation hopefully.

Not sure if this is the root cause or not, but anyways, the class seems 
inconsistent. The method is synchronized even though it seems to be a read only 
operation only. The rest of the class isn't thread safe at all, so I'm 
wondering what's the purpose.

Second option would be to go fine grain with a ReentrantReadWriteLock maybe

 

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to