收到 Pika 的 "PRECONDITION_FAILED - invalid property 'auto-delete' for queue 'test.queue' in vhost '/'" 错误消息

Receiving an "PRECONDITION_FAILED - invalid property 'auto-delete' for queue 'test.queue' in vhost '/'" error message for Pika

我正在尝试在我的 RabbitMQ 代理上声明一个队列。在此之前我没有遇到任何问题,直到我尝试将“auto_delete=True”参数添加到队列声明中。队列旨在使用来自扇出交换的消息。

我在再次声明之前已经删除了队列。我什至尝试重命名队列。尽管如此,我一直收到相同的错误“PRECONDITION_FAILED - vhost '/' 中的队列 'test.queue' 无效 属性 'auto-delete'”。下面是我声明队列的代码:

def setup_queue(self, queue_name):
        LOGGER.info('Declaring queue %s', queue_name)
        cb = functools.partial(self.on_queue_declareok, userdata=queue_name)
        self._channel.queue_declare(
            queue=queue_name,
            callback=cb,
            durable=True,
            auto_delete=True,
            arguments={"x-queue-type": "quorum", "x-max-length": MAX_QUEUE_LENGTH})

您无法为 Quorum 队列设置 auto_delete=True 功能。

查看功能了解更多详情: https://www.rabbitmq.com/quorum-queues.html