You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/06/01 22:42:00 UTC
[jira] [Commented] (QPID-7541) [Broker-J] Close Consumers when a
Queue is deleted
[ https://issues.apache.org/jira/browse/QPID-7541?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16498662#comment-16498662 ]
ASF GitHub Bot commented on QPID-7541:
--------------------------------------
GitHub user alex-rufous opened a pull request:
https://github.com/apache/qpid-broker-j/pull/7
QPID-7541: [Broker-J] Close Consumers when a Queue is deleted
Following discussion in user mailing list [What is AMQP 1-0 spec complaint Broker behaviour for deletion of queue with consumers attached?](https://lists.apache.org/thread.html/3e64db4411925250b02e3f4648263a648c4406f1bbcb342369eeb06a@%3Cusers.qpid.apache.org%3E) I implemented changes allowing to detach links on queue or exchange deletion if environment variable `qpid.resource.deleteOnlyWithNoLinkAttached` is set to `false`. If it is set to `true`, the queue/exchange cannot be deleted with any associated sending or receiving links.
When`qpid.resource.deleteOnlyWithNoLinkAttached=false` the following behaviour is implemented:
* detaches all links with an error "amqp:resource-deleted"
* any in-progress producing/consuming transactions are marked as rollback-only
* if commit/rollback is in progress and transaction cannot be marked as rollback-only, the deletion waits for discharge to finish
* the remaining messages on the deleted queue are moved alternate binding if one is configured
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/alex-rufous/qpid-broker-j master
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/qpid-broker-j/pull/7.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #7
----
commit 6b16be0b3a76adf6d1d647c69881e73146e5c9e8
Author: Alex Rudyy <or...@...>
Date: 2018-05-30T10:49:07Z
QPID-7541: [Broker-J] Prevent deletion of queues and exchanges with attached links
commit ee55830b729b4b8794cee35b7020cae3bc41a555
Author: Alex Rudyy <or...@...>
Date: 2018-06-01T16:55:12Z
QPID-7541: [Broker-J] Detach links on destination deletion
----
> [Broker-J] Close Consumers when a Queue is deleted
> --------------------------------------------------
>
> Key: QPID-7541
> URL: https://issues.apache.org/jira/browse/QPID-7541
> Project: Qpid
> Issue Type: Bug
> Components: Broker-J
> Reporter: Lorenz Quack
> Priority: Major
> Fix For: qpid-java-broker-7.1.0
>
> Attachments: 0001-QPID-7541-Broker-J-Close-Consumers-when-a-Queue-is-d.patch, proton-j_client.log, simultaneous_closing.log
>
>
> Currently when a Queue is deleted the associated Consumers are not closed.
> This is essentially a resource leak.
> Note: In 6.1.x, for the AMQP 1.0 protocol, deleting a queue did detach the sending links (without error). Receiving links were not detached. This code (org.apache.qpid.server.protocol.v1_0.ConsumerTarget_1_0#queueDeleted) was removed in 7.0.x and this JIRA raised.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org