Uploaded image for project: 'ActiveMQ Artemis'
  1. ActiveMQ Artemis
  2. ARTEMIS-3308

Federated queue will not move large messages

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.17.0
    • 2.19.1, 2.20.0
    • Broker, Federation
    • None
    • Windows 10 Pro (jdk 1.8 oracle last) artemis 2.17.0

    Description

      Hello. I'am create two artemis broker:

      artemis01:

      artemis create --max-hops=1  artemis01

      artemis02:

      artemis create --max-hops=1 --port-offset=10 artemis02

      user: artemis

      password: artemis

       

      In artemis01/etc/broker.xml i add:

       

      <connectors> 
         <connector name="artemis02-connector">tcp://localhost:61626</connector>
      </connectors>
      <federations> 
        <federation name="artemis01-federation" user="artemis" password="artemis"> 
          <upstream name="artemis02"> 
            <static-connectors> 
              <connector-ref>artemis02-connector</connector-ref> 
            </static-connectors> 
            <policy ref="artemis-queue-federation"/> 
          </upstream>
          <queue-policy name="artemis-queue-federation" priority-adjustment="-5" include-federated="false"> 
            <include queue-match="#" address-match="TEST.FEDERATED"/> 
          </queue-policy> 
        </federation>
      </federations>

      then run both brokers.

      I send large message to artemis02:

      artemis producer --url tcp://localhost:61626 --text-size 8000000 --destination TEST.FEDERATED --message-count 1 --user artemis --password artemis

      And then try get it from artemis01:

      artemis consumer --url tcp://localhost:61616 --destination TEST.FEDERATED --message-count 1 --user artemis --password artemis

      But i can't received message. Consumer stuck it loop. And artemis01 write in logs many NPE:

      ***** durable queues TEST.FEDERATED:
      - queueID=30 address:TEST.FEDERATED name:TEST.FEDERATED filter:null
      ***** non durable for TEST.FEDERATED:
      ..................................................
      , direct: true, rejectDuplicates: true
      2021-05-19 19:27:18,001 DEBUG [org.apache.activemq.artemis.core.server.plugin.impl] AMQ843017: onMessageRouteError message: ClientLargeMessageImpl[messageID=1518976, durable=true, address=TEST.FEDERATED::TEST.FEDERATED,userID=50cb6a04-b8bd-11eb-85ab-00155d7523cb,properties=TypedProperties[__AMQ_CID=50bf3501-b8bd-11eb-85ab-00155d7523cb,_AMQ_ROUTING_TYPE=1,count=0,_AMQ_LARGE_SIZE=16014077,ThreadSent=Producer ActiveMQQueue[TEST.FEDERATED], thread=0]], with context: RoutingContextImpl(Address=null, routingType=null, PreviousAddress=null previousRoute:null, reusable=false, version=0)
      ..................................................
      ***** durable queues TEST.FEDERATED:
      - queueID=30 address:TEST.FEDERATED name:TEST.FEDERATED filter:null
      ***** non durable for TEST.FEDERATED:
      ..................................................
      , direct: true, rejectDuplicates: true
      2021-05-19 19:27:18,002 INFO [org.apache.activemq.artemis.core.server.plugin.impl] AMQ841018: error routing message with ID: 1518976, exception: java.lang.NullPointerException
      
      

       
      I see some source code and find what NPE occurs in CoreMessage.java class at 717 line because buffer is NULL:

      buffer.setIndex(0, 0);

      Not large messages works fine. Please fix it.

      Attachments

        Issue Links

          Activity

            People

              gtully Gary Tully
              revkov Alexander Andreevich Revkov
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 50m
                  50m