On creating a receiver from an exchange, the subscription queue created is marked exclusive, but not auto-delete. This means if the connection is lost without proper cleanup, the queue will remain on the server. Since the queue name is by default a library generated UUID, there is no way for the application to resubscribe to that queue. In other words it really should be marked auto-delete. This would also then match the c++ client and provide a more uniform experience across languages.