Can you check against main now ?
On Tue, Oct 26, 2021 at 11:03 PM Justin Bertram <jbert...@apache.org> wrote: > I've got a test for this and a fix. I'll send a PR tomorrow. > > > Justin > > On Tue, Oct 26, 2021 at 2:46 PM Clebert Suconic <clebert.suco...@gmail.com > > > wrote: > > > I misunderstood it before. Apologize. > > > > I am away this week. I will take a look on this next week if no one gets > > there before me. > > > > On Tue, Oct 26, 2021 at 11:07 AM Havret <hav...@apache.org> wrote: > > > > > Yes, that's the issue, I mentioned it at least a few times in this > thread > > > and the previous one. > > > > > > For reference, the test looks as follows: > > > > > > > > > https://github.com/Havret/dotnet-activemq-artemis-client/blob/af9085dbea8dc467ede565dda9312610cc8b42b7/test/ArtemisNetClient.IntegrationTests/TopologyManagement/DeleteQueueSpec.cs#L53-L79 > > > > > > On Tue, Oct 26, 2021 at 3:29 PM Clebert Suconic < > > clebert.suco...@gmail.com > > > > > > > wrote: > > > > > > > I meant the Boolean property saying auto remove address. I didn’t > > realize > > > > that was the issue. > > > > > > > > On Tue, Oct 26, 2021 at 9:27 AM Clebert Suconic < > > > clebert.suco...@gmail.com > > > > > > > > > wrote: > > > > > > > > > I did not realize there was a management operation in the mix. I > > agree > > > > > with Robbie > > > > > > > > > > @Havret let me know if that’s the issue please ? > > > > > > > > > > > > > > > On Tue, Oct 26, 2021 at 6:05 AM Robbie Gemmell < > > > robbie.gemm...@gmail.com > > > > > > > > > > wrote: > > > > > > > > > >> If the management API has a queue deletion operation that takes an > > > > >> 'auto delete address' boolean then I would consider it a bug if it > > > > >> doesnt actually [eventually] delete a previously > > > > >> auto-created-by-management address when that boolean is true, > > > > >> regardless of the broker config. > > > > >> > > > > >> If it doesnt delete the address then it seems effectively useless; > > if > > > > >> it only does anything if auto-delete-address was set true in the > > > > >> broker config then why does the management boolean even exist at > > all? > > > > >> It then seems to do nearly or absolutely nothing (unless setting > the > > > > >> management boolean false will somehow prevent the address being > > > > >> auto-deleted by the broker even if its auto-delete config is set > > > > >> true...seems unlikely)? > > > > >> > > > > >> Personally I think this is a bug and the explicit management > boolean > > > > >> should be respected, it and the broker auto deletion are not even > > > > >> really the same form of auto-deletion. The general auto-deletion > > > > >> mechanism is a sweep recognising unused auto-created things. The > > > > >> management operation is an explicit command that 'im deleting the > > > > >> queue, also auto delete its address now, the one that you > > auto-created > > > > >> earlier, so that I dont have to go do that separately'. It is > > > > >> essentially a shortcut to avoid needing to perform another > > management > > > > >> operation. > > > > >> > > > > >> At the very least if it is to be considered not-a-bug it should > > throw > > > > >> an exception when the value is true if it isnt actually going to > > work, > > > > >> e.g an IllegalStateException, alerting the user to their folly of > > > > >> expecting it to work in the obvious way it previously seems to > have. > > > > >> > > > > >> In reverse, I would also expect/assume an 'auto create address' > > > > >> management boolean on queue creation to work, even when the 'auto > > > > >> create addresses' broker config is set false. If not, again it > > should > > > > >> throw. > > > > >> > > > > >> On Tue, 26 Oct 2021 at 06:39, Havret <h4v...@gmail.com> wrote: > > > > >> > > > > > >> > It seems I was assuming that calling destroy queue via > management > > > API > > > > >> has > > > > >> > greater precedence than configuration setting. With that being > > said > > > I > > > > >> will > > > > >> > just update the client docs, so the API doesn't confuse users > > > anymore. > > > > >> > > > > > >> > To summarize: > > > > >> > If you create a queue with *auto-create-address *flag set to > true, > > > and > > > > >> then > > > > >> > try to destroy it, the flag *autoDeleteAddress *will work only, > > and > > > > >> only if > > > > >> > the broker configuration has *auto-delete-addresses* flag set to > > > true. > > > > >> > > > > > >> > On Tue, Oct 26, 2021 at 12:31 AM Clebert Suconic < > > > > >> clebert.suco...@gmail.com> > > > > >> > wrote: > > > > >> > > > > > >> > > 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 > > > > >> > > > > > > >> > > > > > -- > > > > > Clebert Suconic > > > > > > > > > -- > > > > Clebert Suconic > > > > > > > > > -- > > Clebert Suconic > > > -- Clebert Suconic