我公司有一个托管 RabbitMQ 3.6.1 和 Erlang 19.3 的环境。当我尝试使用 RabbitMQ 管理 UI 创建队列时,出现以下错误。我可以创建 Exchange 和 VHost。只有当我尝试创建队列时才会收到错误。我尝试编写一个实用程序来使用 HTTP API 创建队列,但即使这样也失败了。
经过更多研究,我偶然发现了这篇文章https://groups.google.com/d/msg/rabbitmq-users/pa1UtLbbvOE/3OlgKgMBAgAJ,其中说 Erlang 19 与 RabbitMQ 3.6.3 及更低版本不兼容。有人可以证实我的发现吗?
我收到的错误是 收到响应代码 500,正文为 {"error":"Internal Server Error","reason":"{error, {出口, {{函数子句, [{rabbit_queue_location_validator,模块, [\“随机的\”], [{文件,\"src/rabbit_queue_location_validator.erl\"}, {行,50}]}, {rabbit_queue_location_validator,validate_strategy,1, [{文件,\"src/rabbit_queue_location_validator.erl\"}, {行,38}]}, {rabbit_queue_master_location_misc,get_location_mod_by_config, 1、 [{文件,\"src/rabbit_queue_master_location_misc.erl\"}, {行,88}]}, {rabbit_queue_master_location_misc,get_location,1, [{文件,\"src/rabbit_queue_master_location_misc.erl\"}, {行,51}]}, {rabbit_amqqueue,声明,6, [{文件,\"src/rabbit_amqqueue.erl\"},{行,300}]}, {rabbit_channel,handle_method,3, [{文件,\"src/rabbit_channel.erl\"},{行,1331}]}, {rabbit_channel,handle_cast,2, [{文件,\"src/rabbit_channel.erl\"},{行,455}]}, {gen_server2,handle_msg,2, [{文件,\"src/gen_server2.erl\"},{行,1049}]}]}, {gen_server,调用, [<0.27627.105>, {称呼, {'queue.declare',0,<<\"Test\">>,假,真,假,假,假, []}, 无,<0.15368.105>}, 无穷]}}, [{gen_server,call,3,[{文件,\"gen_server.erl\"},{line,212}]}, {rabbit_mgmt_util,'-amqp_request/5-fun-0-',4, [{文件,\"src/rabbit_mgmt_util.erl\"},{行,579}]}, {rabbit_mgmt_util,with_channel,5, [{文件,\"src/rabbit_mgmt_util.erl\"},{行,598}]}, {rabbit_mgmt_util,http_to_amqp,5, [{文件,\"src/rabbit_mgmt_util.erl\"},{行,526}]}, {webmachine_resource,resource_call,3, [{文件,\"src/webmachine_resource.erl\"},{行,186}]}, {webmachine_resource,do,3, [{文件,\"src/webmachine_resource.erl\"},{行,142}]}, {webmachine_decision_core,resource_call,1, [{文件,\"src/webmachine_decision_core.erl\"},{行,48}]}, {webmachine_decision_core,accept_helper,1, [{file,\"src/webmachine_decision_core.erl\"},{line,612}]}]}} “}
就您而言,错误发生在此处。您是否创建了值为
queue-master-locator
的 random
策略?如果是这样,我建议清除该政策,看看是否可以解决问题。
我还建议升级到最新版本(
3.6.12
)。您使用的版本很旧。
感谢@Luke Bakken 将我指向 RabbitMQ 邮件列表。
我通过将队列主位置策略的配置更改为 <<"random">>
成功解决了该问题请参阅此链接了解更多信息
https://groups.google.com/d/msg/rabbitmq-users/XUbtu4UxbHQ/3y-PvO0oBAAJ