[ 
https://issues.apache.org/jira/browse/AMQ-8400?focusedWorklogId=664930&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-664930
 ]

ASF GitHub Bot logged work on AMQ-8400:
---------------------------------------

                Author: ASF GitHub Bot
            Created on: 13/Oct/21 18:28
            Start Date: 13/Oct/21 18:28
    Worklog Time Spent: 10m 
      Work Description: jbonofre commented on a change in pull request #720:
URL: https://github.com/apache/activemq/pull/720#discussion_r728136488



##########
File path: 
activemq-broker/src/main/java/org/apache/activemq/transaction/Transaction.java
##########
@@ -226,4 +232,10 @@ public boolean isRollbackOnly() {
         return rollackOnlyCause != null;
     }
 
+    protected ArrayList<Synchronization> getSynchronizationsCopy() {

Review comment:
       Maybe it's easier/smaller to use `Collections.synchronizedList(new 
ArrayList<Object>());` instead of a method wrapping with sync ?




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 664930)
    Time Spent: 1h 10m  (was: 1h)

> ConcurrentModificationException in Transaction.java
> ---------------------------------------------------
>
>                 Key: AMQ-8400
>                 URL: https://issues.apache.org/jira/browse/AMQ-8400
>             Project: ActiveMQ
>          Issue Type: Task
>          Components: Broker
>    Affects Versions: 5.15.15
>            Reporter: Matt Pavlovich
>            Priority: Major
>             Fix For: 5.17.0, 5.16.4
>
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> With LoggingBrokerPlugin enabled:
> {noformat}
> 2021-10-08T13:21:06,201 | WARN  | ActiveMQ NIO Worker 394 | LocalTransaction  
>                | 71 - org.apache.activemq.activemq-osgi - 5.15.15 | POST 
> COMMIT FAILED:
> java.util.ConcurrentModificationException: null
>         at 
> java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1043) ~[?:?]
>         at java.util.ArrayList$Itr.next(ArrayList.java:997) ~[?:?]
>         at 
> org.apache.activemq.transaction.Transaction.fireAfterCommit(Transaction.java:132)
>  ~[?:?]
>         at 
> org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:201)
>  ~[?:?]
>         at 
> org.apache.activemq.transaction.Transaction$2.call(Transaction.java:59) ~[?:?]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
>         at 
> org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:1156)
>  ~[?:?]
>         at 
> org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:1116)
>  ~[?:?]
>         at 
> org.apache.activemq.store.kahadb.KahaDBTransactionStore.commit(KahaDBTransactionStore.java:301)
>  ~[?:?]
>         at 
> org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:70)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.TransactionBroker.commitTransaction(TransactionBroker.java:252)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.util.LoggingBrokerPlugin.commitTransaction(LoggingBrokerPlugin.java:203)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.TransportConnection.processCommitTransactionOnePhase(TransportConnection.java:538)
>  ~[?:?]
>         at 
> org.apache.activemq.command.TransactionInfo.visit(TransactionInfo.java:100) 
> ~[?:?]
>         at 
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:336)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:200)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:77)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:125)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:301)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport.doConsume(NIOSSLTransport.java:501)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport.processCommand(NIOSSLTransport.java:364)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport.serviceRead(NIOSSLTransport.java:279)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport$1.onSelect(NIOSSLTransport.java:175)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.SelectorSelection.onSelect(SelectorSelection.java:98)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.SelectorWorker$1.run(SelectorWorker.java:123)
>  ~[?:?]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>  ~[?:?]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>  ~[?:?]
>         at java.lang.Thread.run(Thread.java:829) [?:?]
> 2021-10-08T13:21:06,202 | WARN  | ActiveMQ NIO Worker 394 | LocalTransaction  
>                | 71 - org.apache.activemq.activemq-osgi - 5.15.15 | Store 
> COMMIT FAILED:
> javax.transaction.xa.XAException: POST COMMIT FAILED xaErrorCode:-3
>         at 
> org.apache.activemq.transaction.Transaction.newXAException(Transaction.java:213)
>  ~[?:?]
>         at 
> org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:206)
>  ~[?:?]
>         at 
> org.apache.activemq.transaction.Transaction$2.call(Transaction.java:59) ~[?:?]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
>         at 
> org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:1156)
>  ~[?:?]
>         at 
> org.apache.activemq.store.kahadb.MessageDatabase.store(MessageDatabase.java:1116)
>  ~[?:?]
>         at 
> org.apache.activemq.store.kahadb.KahaDBTransactionStore.commit(KahaDBTransactionStore.java:301)
>  ~[?:?]
>         at 
> org.apache.activemq.transaction.LocalTransaction.commit(LocalTransaction.java:70)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.TransactionBroker.commitTransaction(TransactionBroker.java:252)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.util.LoggingBrokerPlugin.commitTransaction(LoggingBrokerPlugin.java:203)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.BrokerFilter.commitTransaction(BrokerFilter.java:114)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.TransportConnection.processCommitTransactionOnePhase(TransportConnection.java:538)
>  ~[?:?]
>         at 
> org.apache.activemq.command.TransactionInfo.visit(TransactionInfo.java:100) 
> ~[?:?]
>         at 
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:336)
>  ~[?:?]
>         at 
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:200)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:77)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:125)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:301)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport.doConsume(NIOSSLTransport.java:501)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport.processCommand(NIOSSLTransport.java:364)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport.serviceRead(NIOSSLTransport.java:279)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.NIOSSLTransport$1.onSelect(NIOSSLTransport.java:175)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.SelectorSelection.onSelect(SelectorSelection.java:98)
>  ~[?:?]
>         at 
> org.apache.activemq.transport.nio.SelectorWorker$1.run(SelectorWorker.java:123)
>  ~[?:?]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>  ~[?:?]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>  ~[?:?]
>         at java.lang.Thread.run(Thread.java:829) [?:?]
> Caused by: java.util.ConcurrentModificationException
>         at 
> java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1043) ~[?:?]
>         at java.util.ArrayList$Itr.next(ArrayList.java:997) ~[?:?]
>         at 
> org.apache.activemq.transaction.Transaction.fireAfterCommit(Transaction.java:132)
>  ~[?:?]
>         at 
> org.apache.activemq.transaction.Transaction.doPostCommit(Transaction.java:201)
>  ~[?:?]
>         ... 32 more
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to