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

Diverts block when target address is not blocked

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 2.31.0
    • None
    • Broker
    • None

    Description

      When using an exclusive divert with an address-full-policy set to BLOCK, the divert will become blocked when the source address reaches its limit. This happens even if the target address has space and is not blocked. For instance, if I have an address app.source-addr, and a divert picking up select messages from that source address and routing them to app.target-addr. If the address app.source-addr becomes full and blocks, producers are no longer able to send messages. Even though the messages they sent would be routed to the app.target-addr, and that address still has space available.

      Sample config:

      <address-settings>
        <address-setting match="app.source-addr">
          <max-size-messages>5</max-size-messages>
          <address-full-policy>BLOCK</address-full-policy>
        </address-setting>
      </address-settings>
      
      <addresses>
        <address name="app.source-addr">
          <anycast/>
        </address>
      </addresses>
      
      <diverts>
        <divert name="divert-app.source-addr">
          <address>app.source-addr</address>
          <forwarding-address>app.target-addr</forwarding-address>
          <exclusive>true</exclusive>
        </divert>
      </diverts>
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              jreagan Josh Reagan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: