Erwin Dondorp created ARTEMIS-3090:
--------------------------------------

             Summary: expiry-queue cannot be unset
                 Key: ARTEMIS-3090
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3090
             Project: ActiveMQ Artemis
          Issue Type: Bug
          Components: Broker
    Affects Versions: 2.16.0
            Reporter: Erwin Dondorp


By default, expiry-queue is set to "ExpiryQueue".

But it is not possible to replace the value with "xsd:nil" since the 
expiry-queue setting is not nillable as specified in the corresponding XSD.

However, 
src/main/java/org/apache/activemq/artemis/core/server/impl/QueueImpl.java 
implements a use-case to drop the message when no expiry-queue is set.

This use-case is hard to reach as one must then not set the expiry-queue for 
the default address (#) and then set the expiry-queue for all other addresses.

I have 2 use-cases for which not expiry-queue should be set. the first is for 
destinations that carry low-value data, and second for the ExpiryQueue itself, 
to make sure that messages will eventually be discarded. The default 
ExpiryQueue cannot expire messages since its expiry-queue points to itself.

I suggest that expiry-queue is made nillable, so that it can simply be applied 
to individual addresses.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to