Comments (6)
@leonjoosse what does the node log when this happens?
from rabbitmq-server.
Thanks for the swift reply @michaelklishin
I had a better look at the logs. I thought this was unrelated, but it is printed everytime I execute the request via Insomnia.
Using the cURL request from the start post, this is logged:
2024-02-27 12:47:20.871970+00:00 [info] <0.89778.0> Waiting for Mnesia tables for 30000 ms, 9 retries left
2024-02-27 12:47:20.872151+00:00 [info] <0.89778.0> Successfully synced tables from a peer
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> crasher:
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> initial call: cowboy_stream_h:request_process/3
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> pid: <0.89778.0>
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> registered_name: []
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> exception error: bad argument
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in function lists:keymember/3
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> called as lists:keymember(<<"ha-mode">>,1,
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> #{<<"max-length-bytes">> => 5242880})
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> *** argument 3: not a list
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in call from rabbit_mirror_queue_misc:does_policy_configure_cmq/1 (rabbit_mirror_queue_misc.erl, line 1014)
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in call from lists:any/2 (lists.erl, line 1535)
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in call from rabbit_mirror_queue_misc:are_cmqs_used1/0 (rabbit_mirror_queue_misc.erl, line 997)
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in call from rabbit_deprecated_features:'-list/1-fun-1-'/2 (rabbit_deprecated_features.erl, line 370)
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in call from maps:filter_1/3 (maps.erl, line 334)
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in call from maps:filter/2 (maps.erl, line 320)
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> in call from rabbit_depr_ff_extra:cli_info/1 (rabbit_depr_ff_extra.erl, line 41)
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> ancestors: [<0.89777.0>,<0.2226.0>,<0.2225.0>,<0.2224.0>,<0.2222.0>,
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> rabbit_web_dispatch_sup,<0.2172.0>]
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> message_queue_len: 0
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> messages: []
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> links: [<0.89777.0>]
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> dictionary: []
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> trap_exit: false
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> status: running
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> heap_size: 6772
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> stack_size: 28
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> reductions: 4665
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0> neighbours:
2024-02-27 12:47:20.872444+00:00 [error] <0.89778.0>
2024-02-27 12:47:20.873234+00:00 [error] <0.89777.0> Ranch listener {acceptor,{0,0,0,0,0,0,0,0},15671}, connection process <0.89777.0>, stream 1 had its request process <0.89778.0> exit with reason badarg and stacktrace [{lists,keymember,[<<"ha-mode">>,1,#{<<"max-length-bytes">> => 5242880}],[{error_info,#{module => erl_stdlib_errors}}]},{rabbit_mirror_queue_misc,does_policy_configure_cmq,1,[{file,"rabbit_mirror_queue_misc.erl"},{line,1014}]},{lists,any,2,[{file,"lists.erl"},{line,1535}]},{rabbit_mirror_queue_misc,are_cmqs_used1,0,[{file,"rabbit_mirror_queue_misc.erl"},{line,997}]},{rabbit_deprecated_features,'-list/1-fun-1-',2,[{file,"rabbit_deprecated_features.erl"},{line,370}]},{maps,filter_1,3,[{file,"maps.erl"},{line,334}]},{maps,filter,2,[{file,"maps.erl"},{line,320}]},{rabbit_depr_ff_extra,cli_info,1,[{file,"rabbit_depr_ff_extra.erl"},{line,41}]}]
from rabbitmq-server.
Interesting. Would it be possible to see the policies you have running too @leonjoosse ?
from rabbitmq-server.
Thank you for the report!
I see the internal format of the policy is an Erlang map instead of the expected Erlang proplist. How do you declare the policy in the first place?
from rabbitmq-server.
@SimonUnge @dumbbell Thanks for getting back on this. Here's the policies we defined. Only added them via the UI, they are there for quite a while already. Unfortunately, I don't know on which RabbitMQ version we added them.
The colleague usually managing the system got back today, on his advice I removed both policies. The error as described in the start post was immediately gone. I added both policies again, using the UI, with the exact same parameters.
This works for me, so closed the issue for now. If you have more questions, I'm happy to answer them!
from rabbitmq-server.
Thank you for the additional feedback!
So somehow, the policy has been stored internally in an invalid format, despite the validity checks. The web UI itself canβt bypass these checks, so there must be something else going on.
Another question: did you used the definitions import/export feature?
from rabbitmq-server.
Related Issues (20)
- Deprecate `queue_master_locator` HOT 1
- x-death count not incremented when message expired HOT 14
- Prevent excessive logging in certain failure scenarios HOT 3
- RabbitMQ 3.13.0 nodes with peer discovery enabled fails to start in an IPv6-only environment HOT 24
- AMQP 1.0 Shovels: expose additional capabilities needed for successful connection to some AMQP 1.0 brokers HOT 3
- Khepri: timeouts when one of the nodes stops responding
- RabbitMQ 3.13.0 nodes with Consul peer discovery enabled fails to form a cluster HOT 2
- Odd characters in example file deps/rabbit/docs/rabbitmq.conf.example l.801 HOT 1
- Popup does not close in Managemet UI
- A `rabbitmq-queues grow` equivalent is missing for streams HOT 2
- Channel Metrics Cardinality - /metrics stops working HOT 3
- Unhandled function clause exception when retrieving queue for nonexistent virtual host HOT 2
- Add the ability to specify `$node` in log formatter format string
- HTTP API: GET /api/queues/{vhost}/{name} can return duplicate keys for quorum queues HOT 3
- 3.11: two Raft replicas are in the timeout state, one is a candidate HOT 5
- OpenID compliance check is not based on the final specification
- Possible race condition in classic queue deletion/declaration handling for multi-node clusters
- Quorum queue replica Erlang process names can conflict between queues in different virtual hosts HOT 2
- OpenID Connect RP-Initiated Logout should be optional HOT 1
- Optimise how rdq files are scanned at CQ shared message store recovery startup HOT 21
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rabbitmq-server.