Remove message listener key only after successfully unsubscribing

This commit is contained in:
Chris Eager 2022-11-02 17:15:13 -05:00 committed by Chris Eager
parent fbf6b9826e
commit eb57d87513
1 changed files with 2 additions and 1 deletions

View File

@ -384,12 +384,13 @@ public class MessagesCache extends RedisClusterPubSubAdapter<String, String> imp
}
public void removeMessageAvailabilityListener(final MessageAvailabilityListener listener) {
@Nullable final String queueName = queueNamesByMessageListener.remove(listener);
@Nullable final String queueName = queueNamesByMessageListener.get(listener);
if (queueName != null) {
unsubscribeFromKeyspaceNotifications(queueName);
synchronized (messageListenersByQueueName) {
queueNamesByMessageListener.remove(listener);
messageListenersByQueueName.remove(queueName);
}
}