在RabbitMQ中创建队列时出错

时间:2017-10-27 10:13:48

标签: erlang rabbitmq

我公司的环境中有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 with body {" error":" Internal Server Error"," reason":" {error,\ n {exit,\ n {{function_clause,\ n [{rabbit_queue_location_validator,module,\ n [\" random \"],\ n [{file,\" src / rabbit_queue_location_validator.erl \"} ,\ n {line,50}]},\ n {rabbit_queue_location_validator,validate_strategy,1,\ n [{file,\" src / rabbit_queue_location_validator.erl \"},\ n {line,38} ]},\ n {rabbit_queue_master_location_misc,get_location_mod_by_config,\ n 1,\ n [{file,\" src / rabbit_queue_master_location_misc.erl \"},\ n {line,88}]},\ n { rabbit_queue_master_location_misc,get_location,1,\ n [{file,\" src / rabbit_queue_master_location_misc.erl \"},\ n {line,51}]},\ n {rabbit_amqqueue,declare,6,\ n [{file,\" src / rabbit_amqqueue.erl \"},{line,300}]},\ n {rabbit_channel,handle_method,3,\ n [{file,\" src /rabbit_channel.erl\"},{line,1331}]},,n {rabbit_channel,handle_cast,2,\ n [{file,\" src / rabbit_channel.erl \"} ,{line,455}]},\ n {gen_server2,hand le_msg,2,\ n [{file,\" src / gen_server2.erl \"},{line,1049}]}]},\ n {gen_server,call,\ n [< 0.27627 .105>,\ n {call,\ n {' queue.declare',0,<< \" Test \">>,false,true,false ,false,false,\ n []},\ n none,< 0.15368.105>},\ n infinity]}},\ n [{gen_server,call,3,[{file,\" gen_server .erl \"},{line,212}]},\ n {rabbit_mgmt_util,' -amqp_request / 5-fun-0 - ',4,\ n [{file,\& #34; src / rabbit_mgmt_util.erl \"},{line,579}]},\ n {rabbit_mgmt_util,with_channel,5,\ n [{file,\" src / rabbit_mgmt_util.erl \& #34;},{line,598}]},\ n {rabbit_mgmt_util,http_to_amqp,5,\ n [{file,\" src / rabbit_mgmt_util.erl \"},{line,526} ]},\ n {webmachine_resource,resource_call,3,\ n [{file,\" src / webmachine_resource.erl \"},{line,186}]},\ n {webmachine_resource,do, 3,\ n [{file,\" src / webmachine_resource.erl \"},{line,142}]},\ n {webmachine_decision_core,resource_call,1,\ n [{file,\& #34; src / webmachine_decision_core.erl \"},{line,48}]},\ n {webmachine_decision_core,accept_helper,1 ,\ n [{file,\" src / webmachine_decision_core.erl \"},{line,612}]}]}} \ n"}

2 个答案:

答案 0 :(得分:1)

RabbitMQ团队监视this mailing list,有时只回答有关stackoverflow的问题。

在您的情况下,错误发生here。您是否创建了值为queue-master-locator的{​​{1}}政策?如果是这样,我建议清除策略,看看是否能解决问题。

我还建议升级到最新版本(random)。您使用的版本非常旧。

答案 1 :(得分:0)

感谢@Luke Bakken将我指向RabbitMQ邮件列表。

我设法通过将队列主位置策略的配置更改为<<&#;;随机">>

来解决问题

请参阅此链接了解更多信息

https://groups.google.com/d/msg/rabbitmq-users/XUbtu4UxbHQ/3y-PvO0oBAAJ