Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-6327

Unable to remove messages from a Queue, when paging is enabled

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • EAP_EWP 5.2.0 ER5
    • EAP 5.1.0 Post Release
    • None
    • JBoss-EAP-5.1 HornetQ-2.2.2 --> Version : 2.2.2.GA (Favo de Mel, 121) with libHornetQAIO64.so for the journal

    • Hide

      Create a destination , queue/A :

      <queue name="A">
      <entry name="/queue/A"/>
      </queue>

      Configure HornetQ to page persisted messages. Set PAGE for address-full-policy while keeping the page size to a lower figure :

      <address-settings>
      <address-setting match="#">
      <dead-letter-address>jms.queue.DLQ</dead-letter-address>
      <expiry-address>jms.queue.ExpiryQueue</expiry-address>
      <redelivery-delay>0</redelivery-delay>
      <max-size-bytes>15728</max-size-bytes>
      <page-size-bytes>64</page-size-bytes>
      <message-counter-history-day-limit>10</message-counter-history-day-limit>
      <address-full-policy>PAGE</address-full-policy>
      </address-setting>
      </address-settings>

      Sent ~7000 messages each holding 204799 bytes

      Make sure that the messages have been paged. Please use JMX console.

      Invoke jmsQueueControl.removeMessages(null). This would remove in-memory messages but not the ones which were paged. There was no success during subsequent calls of the given API method.

      Show
      Create a destination , queue/A : <queue name="A"> <entry name="/queue/A"/> </queue> Configure HornetQ to page persisted messages. Set PAGE for address-full-policy while keeping the page size to a lower figure : <address-settings> <address-setting match="#"> <dead-letter-address>jms.queue.DLQ</dead-letter-address> <expiry-address>jms.queue.ExpiryQueue</expiry-address> <redelivery-delay>0</redelivery-delay> <max-size-bytes>15728</max-size-bytes> <page-size-bytes>64</page-size-bytes> <message-counter-history-day-limit>10</message-counter-history-day-limit> <address-full-policy>PAGE</address-full-policy> </address-setting> </address-settings> Sent ~7000 messages each holding 204799 bytes Make sure that the messages have been paged. Please use JMX console. Invoke jmsQueueControl.removeMessages(null). This would remove in-memory messages but not the ones which were paged. There was no success during subsequent calls of the given API method.
    • Release Notes, Compatibility/Configuration
    • Hide
      Messages for any given queue could not be removed when the messages were paged. The HornetQ core API removed only the in-memory messages but not the paged ones when jmsQueueControl.removeMessages(null) was used. This problem has now been solved and both paged and non-paged message are successfully removed from the message queue.
      Show
      Messages for any given queue could not be removed when the messages were paged. The HornetQ core API removed only the in-memory messages but not the paged ones when jmsQueueControl.removeMessages(null) was used. This problem has now been solved and both paged and non-paged message are successfully removed from the message queue.
    • Documented as Resolved Issue
    • NEW

    Description

      Messages for any given Queue cannot be removed when the messages are paged. The HornetQ core API removes only the in memory messages but not the paged ones when jmsQueueControl.removeMessages(null) is used.

      Attachments

        Issue Links

          Activity

            People

              csuconic@redhat.com Clebert Suconic
              rhn-support-tywickra Tyronne Wickramarathne
              Eva Kopalova Eva Kopalova (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: