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)