If auto-delete is disabled, the address should not be removed.

If you had a case where it was removed, it was a bug.

The flag was respected before.. but perhaps there was a situation it was not.


You telling me to disrespect the flag and always remove it.. would be
an oxymoron.. I would just pretty much ignore the setting.

On Mon, Oct 25, 2021 at 4:56 PM Havret <h4v...@gmail.com> wrote:
>
> This particular queue is not defined in broker.xml. I'm not sure if 2.19 is
> semantically correct, as having the same configuration I'm getting
> different results than with 2.18 and previous versions. I understand that
> removing the address was decoupled from removing the queue, but in this
> particular case the address is never deleted.
>
> I'm gessing that changes related to
> https://issues.apache.org/jira/browse/ARTEMIS-3502, auto-delete-addresses
> flag, and management API delete queue (with autoDeleteAddress set to true)
> don't play nice together.
>
> My expectation would be that the address will be eventually deleted even
> though the auto-delete-addresses flag is disabled in broker configuration.
> This is an imperative API call, at least from the client perspective.
>
> On Mon, Oct 25, 2021 at 5:46 AM Clebert Suconic <clebert.suco...@gmail.com>
> wrote:
>
> > I believe 2.19 is semantically correct to the configuration you are
> > showing.
> >
> > We also had another change related to not delete queues defined on
> > broker.xml.  Perhaps that’s the problem ?
> >
> >
> >
> > On Sun, Oct 24, 2021 at 9:38 AM Havret <h4v...@gmail.com> wrote:
> >
> > > Hi Clebert,
> > >
> > > I had the same broker configuration for 2.18.0 and the test passed just
> > > fine, so I don't think that the matter of new defaults. The queue is
> > > removed just fine (
> > >
> > >
> > https://github.com/Havret/dotnet-activemq-artemis-client/blob/6cee91547c18194330062a48c3b02c7c385457ff/test/ArtemisNetClient.IntegrationTests/TopologyManagement/DeleteQueueSpec.cs#L68
> > > ),
> > > the problem is that the management api seems to ignore autoDeleteAddress
> > > parameter and the second assertion fails (
> > >
> > >
> > https://github.com/Havret/dotnet-activemq-artemis-client/blob/6cee91547c18194330062a48c3b02c7c385457ff/test/ArtemisNetClient.IntegrationTests/TopologyManagement/DeleteQueueSpec.cs#L70
> > > )
> > >
> > > Thanks,
> > > Havret
> > >
> > >
> > > On Thu, Oct 21, 2021 at 2:54 AM Clebert Suconic <
> > clebert.suco...@gmail.com
> > > >
> > > wrote:
> > >
> > > > The answer for that is in your configuration:
> > > >
> > > > <auto-delete-queues>false</auto-delete-queues>
> > > > <auto-delete-addresses>false</auto-delete-addresses>
> > > > <auto-delete-created-queues>false</auto-delete-created-queues>
> > > >
> > > >
> > > > if you create a new broker configuration now, these auto-deletes are
> > > > turned off.
> > > >
> > > >
> > > > I did that because I have been recommending people in production to
> > > > turn them off.. so I thought I should just turn'em off by default...
> > > >
> > > > I couldn't change the default default, but I added these to new
> > > > configurations...
> > > >
> > > >
> > > > if you need to test auto-delete, you need to set them true.
> > > >
> > > >
> > > >
> > > > Notice that since 2.19 now these will perform a scan before an actual
> > > > delete would happen.
> > > >
> > > > This is because I had seen a production issue where a consumer that
> > > > was up to date, disconnected (connection failure), the close deleted
> > > > the queue immediately, while immediately it caused to another queue to
> > > > be created... in one cirtcunstance the queue was created but not the
> > > > address, creating a mess..
> > > >
> > > >
> > > > I tried to fixing it properly without adding the delays, but I could
> > > > not come up with a scenario that would always work perfectly.. because
> > > > the client will query for the queue, and then issue a create
> > > > separately.. there's always an issue between the queue and create...
> > > > so... the best is to not remove the queue immediately any more...
> > > >
> > > > On Wed, Oct 20, 2021 at 4:33 PM Havret <hav...@apache.org> wrote:
> > > > >
> > > > > Hi,
> > > > >
> > > > > I'm trying to update the test suite of ArtemisNetClient to use
> > ActiveMQ
> > > > > Artemis 2.19.0, but one of the tests starts failing on 2.19.0:
> > > > > Should_delete_queue_alongside_with_auto_created_address -->
> > > > >
> > > >
> > >
> > https://github.com/Havret/dotnet-activemq-artemis-client/pull/300/checks?check_run_id=3943848841
> > > > >
> > > > > The test creates a queue using the management api and then removes it
> > > > with
> > > > > flag autoDeleteAddress set to true. The queue is removed but the
> > > address
> > > > > isn't. I've looked over the release notes, but I didn't spot anything
> > > > that
> > > > > could indicate this change of behavior. Is this a regression, or was
> > > it a
> > > > > deliberate change?
> > > > >
> > > > > Robbie suggested that it might be related to
> > > > > https://issues.apache.org/jira/browse/ARTEMIS-3502
> > > > >
> > > > > I tried to adjust the test:
> > > > > - I set *address-queue-scan-period* to 100
> > > > > - I wait up to 5 seconds until the address is removed
> > > > >
> > > > > But the test still is failing. My broker configuration is as follows:
> > > > >
> > > >
> > >
> > https://github.com/Havret/dotnet-activemq-artemis-client/blob/fc256b2a3784447fa4feadea58b62f58d1fcabfd/test/artemis/broker.xml
> > > > > Is it possible that this new setting interferes with
> > > > > *auto-delete-addresses *set to *false*?
> > > > >
> > > > > Thanks,
> > > > > Havret
> > > >
> > > >
> > > >
> > > > --
> > > > Clebert Suconic
> > > >
> > >
> > --
> > Clebert Suconic
> >



-- 
Clebert Suconic

Reply via email to