Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-2836

ConcurrentModificationException while sending messages to composite destinations

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 5.3.1
    • 5.4.0
    • None
    • None
    • Linux version 2.6.18-92.1.13.el5
      Java 1.6.0_18

    Description

      When the LoggingBrokerPlugin is used and sending messages to composite destinations there is a very high amount of ConcurrentModificationException on the broker.

      The exception thrown on the server side is also propagated to the client side and appears there as well as the additional exception that is thrown on the client side.

      This is the stack trace on the server side:

      java.util.ConcurrentModificationException
              at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
              at java.util.HashMap$EntryIterator.next(HashMap.java:834)
              at java.util.HashMap$EntryIterator.next(HashMap.java:832)
              at java.util.HashMap.putAllForCreate(HashMap.java:435)
              at java.util.HashMap.<init>(HashMap.java:225)
              at org.apache.activemq.command.Message.copy(Message.java:120)
              at org.apache.activemq.command.ActiveMQMessage.copy(ActiveMQMessage.java:64)
              at org.apache.activemq.command.ActiveMQObjectMessage.copy(ActiveMQObjectMessage.java:81)
              at org.apache.activemq.command.ActiveMQObjectMessage.copy(ActiveMQObjectMessage.java:75)
              at org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:88)
              at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:133)
              at org.apache.activemq.broker.util.LoggingBrokerPlugin.send(LoggingBrokerPlugin.java:280)
              at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:133)
              at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:133)
              at org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:446)
              at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:631)
              at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:300)
              at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:178)
              at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
              at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
              at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
              at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:216)
              at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
              at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:204)
              at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:186)
              at java.lang.Thread.run(Thread.java:619)
      

      Attachments

        Activity

          People

            gtully Gary Tully
            hadrian Hadrian Zbarcea
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: