Uploaded image for project: 'FUSE Message Broker'
  1. FUSE Message Broker
  2. MB-985

TimeStampingBrokerPlugin causes messages to expire in DLQ queue

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      Here is steps to reproduce the issue:

      1. Set the plugin to use a low value timeout like this:

      <timeStampingBrokerPlugin ttlCeiling="60000" zeroExpirationOverride="60000" />

      and individual deadLetterStrategy as following

      <policyEntry queue=">" producerFlowControl="true" memoryLimit="5mb">
          <deadLetterStrategy>
              <individualDeadLetterStrategy queuePrefix="DLQ." useQueueForQueueMessages="true" />
          </deadLetterStrategy>
       </policyEntry>

      2. Produce 10 messages either via or shipped ProducerTool example or the web console to TEST.IN queue (use persistent delivery mode);
      3. Wait 1 minute for messages to expire and then propagate to DLQ.TEST.IN;
      4. Confirm 10 messages arrived into DLQ.TEST.IN queue;
      5. Open one message, and you'll see that the timeStampingBrokerPlugin has added a timestamp to the message. (Usually expired messages have expiration field cleared when going into the DLQ)
      6. Wait one minute, and messages are expired from the DLQ.TEST.IN. The messages are not consumable or browsable any more (does not exist) although the webconsole still shows 10 messages pending.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                garytully Gary Tully
                Reporter:
                joe.luo Joe Luo
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: