Skip to content

Commit eb59fba

Browse files
vikinghawkacogoluegnes
authored andcommitted
closing a channel should cleanup auto-delete queues
(cherry picked from commit e47ef6e)
1 parent f295141 commit eb59fba

File tree

1 file changed

+7
-11
lines changed

1 file changed

+7
-11
lines changed

src/main/java/com/rabbitmq/client/impl/recovery/AutorecoveringChannel.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ private void executeAndClean(IoTimeoutExceptionRunnable callback) throws IOExcep
101101
callback.run();
102102
} finally {
103103
for (String consumerTag : consumerTags) {
104-
this.connection.deleteRecordedConsumer(consumerTag);
104+
this.deleteRecordedConsumer(consumerTag);
105105
}
106106
this.connection.unregisterChannel(this);
107107
}
@@ -644,10 +644,7 @@ public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProp
644644

645645
@Override
646646
public void basicCancel(String consumerTag) throws IOException {
647-
RecordedConsumer c = this.deleteRecordedConsumer(consumerTag);
648-
if(c != null) {
649-
this.maybeDeleteRecordedAutoDeleteQueue(c.getQueue());
650-
}
647+
this.deleteRecordedConsumer(consumerTag);
651648
delegate.basicCancel(consumerTag);
652649
}
653650

@@ -902,13 +899,12 @@ private void recordConsumer(String result,
902899
this.connection.recordConsumer(result, consumer);
903900
}
904901

905-
private RecordedConsumer deleteRecordedConsumer(String consumerTag) {
902+
private void deleteRecordedConsumer(String consumerTag) {
906903
this.consumerTags.remove(consumerTag);
907-
return this.connection.deleteRecordedConsumer(consumerTag);
908-
}
909-
910-
private void maybeDeleteRecordedAutoDeleteQueue(String queue) {
911-
this.connection.maybeDeleteRecordedAutoDeleteQueue(queue);
904+
RecordedConsumer c = this.connection.deleteRecordedConsumer(consumerTag);
905+
if (c != null) {
906+
this.connection.maybeDeleteRecordedAutoDeleteQueue(c.getQueue());
907+
}
912908
}
913909

914910
private void maybeDeleteRecordedAutoDeleteExchange(String exchange) {

0 commit comments

Comments
 (0)