rabbitmq-rtopic-exchange
rabbitmq-rtopic-exchange copied to clipboard
support rabbitmq server 3.13
Is your feature request related to a problem? Please describe.
Extension is working fine on rabbitmq3.11 and 3.12. When switching to the latest version 3.13, sending a message to an exchange with type "x-rtopic" fails with error 541, 'INTERNAL_ERROR'
.
Describe the solution you'd like
Possibility to run this plugin using RabbitMQ3.13
Describe alternatives you've considered
Switch back to RabbitMQ 3.12
Additional context
Error logs
[notice] <0.44.0> Application syslog exited with reason: stopped
[notice] <0.248.0> Logging: switching to configured handler(s); following messages may not be visible in this log output
[notice] <0.248.0> Logging: configured log handlers are now ACTIVE
[info] <0.248.0> ra: starting system quorum_queues
[info] <0.248.0> starting Ra system: quorum_queues in directory: /var/lib/rabbitmq/mnesia/rabbit@96047a93541b/quorum/rabbit@96047a93541b
[info] <0.262.0> ra system 'quorum_queues' running pre init for 0 registered servers
[info] <0.263.0> ra: meta data store initialised for system quorum_queues. 0 record(s) recovered
[notice] <0.268.0> WAL: ra_log_wal init, open tbls: ra_log_open_mem_tables, closed tbls: ra_log_closed_mem_tables
[info] <0.248.0> ra: starting system coordination
[info] <0.248.0> starting Ra system: coordination in directory: /var/lib/rabbitmq/mnesia/rabbit@96047a93541b/coordination/rabbit@96047a93541b
[info] <0.275.0> ra system 'coordination' running pre init for 0 registered servers
[info] <0.276.0> ra: meta data store initialised for system coordination. 0 record(s) recovered
[notice] <0.281.0> WAL: ra_coordination_log_wal init, open tbls: ra_coordination_log_open_mem_tables, closed tbls: ra_coordination_log_closed_mem_tables
[info] <0.248.0> ra: starting system coordination
[info] <0.248.0> starting Ra system: coordination in directory: /var/lib/rabbitmq/mnesia/rabbit@96047a93541b/coordination/rabbit@96047a93541b
[info] <0.248.0> Waiting for Khepri leader for 30000 ms, 9 retries left
[notice] <0.284.0> RabbitMQ metadata store: candidate -> leader in term: 1 machine version: 0
[info] <0.248.0> Khepri leader elected
[info] <0.248.0>
[info] <0.248.0> Starting RabbitMQ 3.13.1 on Erlang 26.2.4 [jit]
[info] <0.248.0> Copyright (c) 2007-2024 Broadcom Inc and/or its subsidiaries
[info] <0.248.0> Licensed under the MPL 2.0. Website: https://rabbitmq.com
## ## RabbitMQ 3.13.1
## ##
########## Copyright (c) 2007-2024 Broadcom Inc and/or its subsidiaries
###### ##
########## Licensed under the MPL 2.0. Website: https://rabbitmq.com
Erlang: 26.2.4 [jit]
TLS Library: OpenSSL - OpenSSL 3.1.5 30 Jan 2024
Release series support status: supported
Doc guides: https://www.rabbitmq.com/docs/documentation
Support: https://www.rabbitmq.com/docs/contact
Tutorials: https://www.rabbitmq.com/tutorials
Monitoring: https://www.rabbitmq.com/docs/monitoring
Logs: <stdout>
Config file(s): /etc/rabbitmq/conf.d/10-defaults.conf
Starting broker...2024-04-23 08:48:33.749881+00:00 [info] <0.248.0>
[info] <0.248.0> node : rabbit@96047a93541b
[info] <0.248.0> home dir : /var/lib/rabbitmq
[info] <0.248.0> config file(s) : /etc/rabbitmq/conf.d/10-defaults.conf
[info] <0.248.0> cookie hash : kAzE6eSjHMQZG/IoBH4oYQ==
[info] <0.248.0> log(s) : <stdout>
[info] <0.248.0> data dir : /var/lib/rabbitmq/mnesia/rabbit@96047a93541b
[info] <0.248.0> Running boot step pre_boot defined by app rabbit
[info] <0.248.0> Running boot step rabbit_global_counters defined by app rabbit
[info] <0.248.0> Running boot step rabbit_osiris_metrics defined by app rabbit
[info] <0.248.0> Running boot step rabbit_core_metrics defined by app rabbit
[info] <0.248.0> Running boot step rabbit_alarm defined by app rabbit
[info] <0.321.0> Memory high watermark set to 3176 MiB (3331306291 bytes) of 7942 MiB (8328265728 bytes) total
[info] <0.323.0> Enabling free disk space monitoring (disk free space: 985363496960, total memory: 8328265728)
[info] <0.323.0> Disk free limit set to 50MB
[info] <0.248.0> Running boot step code_server_cache defined by app rabbit
[info] <0.248.0> Running boot step file_handle_cache defined by app rabbit
[info] <0.326.0> Limiting to approx 1048479 file handles (943629 sockets)
[info] <0.327.0> FHC read buffering: OFF
[info] <0.327.0> FHC write buffering: ON
[info] <0.248.0> Running boot step worker_pool defined by app rabbit
[info] <0.307.0> Will use 20 processes for default worker pool
[info] <0.307.0> Starting worker pool 'worker_pool' with 20 processes in it
[info] <0.248.0> Running boot step database defined by app rabbit
[info] <0.248.0> Peer discovery: configured backend: rabbit_peer_discovery_classic_config
[notice] <0.308.0> Feature flags: attempt to enable `detailed_queues_endpoint`...
[notice] <0.308.0> Feature flags: `detailed_queues_endpoint` enabled
[notice] <0.308.0> Feature flags: attempt to enable `quorum_queue_non_voters`...
[notice] <0.308.0> Feature flags: `quorum_queue_non_voters` enabled
[notice] <0.308.0> Feature flags: attempt to enable `stream_update_config_command`...
[notice] <0.308.0> Feature flags: `stream_update_config_command` enabled
[notice] <0.308.0> Feature flags: attempt to enable `stream_filtering`...
[notice] <0.308.0> Feature flags: `stream_filtering` enabled
[notice] <0.308.0> Feature flags: attempt to enable `stream_sac_coordinator_unblock_group`...
[notice] <0.308.0> Feature flags: `stream_sac_coordinator_unblock_group` enabled
[notice] <0.308.0> Feature flags: attempt to enable `restart_streams`...
[notice] <0.308.0> Feature flags: `restart_streams` enabled
[notice] <0.308.0> Feature flags: attempt to enable `message_containers`...
[notice] <0.308.0> Feature flags: `message_containers` enabled
[info] <0.248.0> DB: virgin node -> run peer discovery
[notice] <0.44.0> Application mnesia exited with reason: stopped
[info] <0.248.0> Waiting for Mnesia tables for 30000 ms, 9 retries left
[info] <0.248.0> Successfully synced tables from a peer
[info] <0.248.0> Waiting for Mnesia tables for 30000 ms, 9 retries left
[info] <0.248.0> Successfully synced tables from a peer
[info] <0.248.0> Waiting for Mnesia tables for 30000 ms, 9 retries left
[info] <0.248.0> Successfully synced tables from a peer
[info] <0.248.0> Running boot step tracking_metadata_store defined by app rabbit
[info] <0.559.0> Setting up a table for connection tracking on this node: tracked_connection
[info] <0.559.0> Setting up a table for per-vhost connection counting on this node: tracked_connection_per_vhost
[info] <0.559.0> Setting up a table for per-user connection counting on this node: tracked_connection_per_user
[info] <0.559.0> Setting up a table for channel tracking on this node: tracked_channel
[info] <0.559.0> Setting up a table for channel tracking on this node: tracked_channel_per_user
[info] <0.248.0> Running boot step networking_metadata_store defined by app rabbit
[info] <0.248.0> Running boot step feature_flags defined by app rabbit
[info] <0.248.0> Running boot step codec_correctness_check defined by app rabbit
[info] <0.248.0> Running boot step rabbit_exchange_type_rtopic_mnesia defined by app rabbitmq_rtopic_exchange
[info] <0.248.0> Running boot step external_infrastructure defined by app rabbit
[info] <0.248.0> Running boot step rabbit_event defined by app rabbit
[info] <0.248.0> Running boot step rabbit_registry defined by app rabbit
[info] <0.248.0> Running boot step rabbit_auth_mechanism_amqplain defined by app rabbit
[info] <0.248.0> Running boot step rabbit_auth_mechanism_cr_demo defined by app rabbit
[info] <0.248.0> Running boot step rabbit_auth_mechanism_plain defined by app rabbit
[info] <0.248.0> Running boot step rabbit_exchange_type_direct defined by app rabbit
[info] <0.248.0> Running boot step rabbit_exchange_type_fanout defined by app rabbit
[info] <0.248.0> Running boot step rabbit_exchange_type_headers defined by app rabbit
[info] <0.248.0> Running boot step rabbit_exchange_type_topic defined by app rabbit
[info] <0.248.0> Running boot step rabbit_mirror_queue_mode_all defined by app rabbit
[info] <0.248.0> Running boot step rabbit_mirror_queue_mode_exactly defined by app rabbit
[info] <0.248.0> Running boot step rabbit_mirror_queue_mode_nodes defined by app rabbit
[info] <0.248.0> Running boot step rabbit_priority_queue defined by app rabbit
[info] <0.248.0> Priority queues enabled, real BQ is rabbit_variable_queue
[info] <0.248.0> Running boot step rabbit_queue_location_client_local defined by app rabbit
[info] <0.248.0> Running boot step rabbit_queue_location_min_masters defined by app rabbit
[info] <0.248.0> Running boot step rabbit_queue_location_random defined by app rabbit
[info] <0.248.0> Running boot step rabbit_exchange_type_rtopic defined by app rabbitmq_rtopic_exchange
[info] <0.248.0> Running boot step kernel_ready defined by app rabbit
[info] <0.248.0> Running boot step rabbit_sysmon_minder defined by app rabbit
[info] <0.248.0> Running boot step rabbit_epmd_monitor defined by app rabbit
[info] <0.583.0> epmd monitor knows us, inter-node communication (distribution) port: 25672
[info] <0.248.0> Running boot step guid_generator defined by app rabbit
[info] <0.248.0> Running boot step rabbit_node_monitor defined by app rabbit
[info] <0.587.0> Starting rabbit_node_monitor (in ignore mode)
[info] <0.248.0> Running boot step delegate_sup defined by app rabbit
[info] <0.248.0> Running boot step rabbit_memory_monitor defined by app rabbit
[info] <0.248.0> Running boot step rabbit_fifo_dlx_sup defined by app rabbit
[info] <0.248.0> Running boot step core_initialized defined by app rabbit
[info] <0.248.0> Running boot step rabbit_channel_tracking_handler defined by app rabbit
[info] <0.248.0> Running boot step rabbit_connection_tracking_handler defined by app rabbit
[info] <0.248.0> Running boot step rabbit_definitions_hashing defined by app rabbit
[info] <0.248.0> Running boot step rabbit_exchange_parameters defined by app rabbit
[info] <0.248.0> Running boot step rabbit_mirror_queue_misc defined by app rabbit
[info] <0.248.0> Running boot step rabbit_policies defined by app rabbit
[info] <0.248.0> Running boot step rabbit_policy defined by app rabbit
[info] <0.248.0> Running boot step rabbit_queue_location_validator defined by app rabbit
[info] <0.248.0> Running boot step rabbit_quorum_memory_manager defined by app rabbit
[info] <0.248.0> Running boot step rabbit_quorum_queue defined by app rabbit
[info] <0.248.0> Running boot step rabbit_stream_coordinator defined by app rabbit
[info] <0.248.0> Running boot step rabbit_vhost_limit defined by app rabbit
[info] <0.248.0> Running boot step rabbit_federation_parameters defined by app rabbitmq_federation
[info] <0.248.0> Running boot step rabbit_federation_supervisor defined by app rabbitmq_federation
[info] <0.248.0> Running boot step rabbit_federation_queue defined by app rabbitmq_federation
[info] <0.248.0> Running boot step rabbit_federation_upstream_exchange defined by app rabbitmq_federation
[info] <0.248.0> Running boot step rabbit_mgmt_reset_handler defined by app rabbitmq_management
[info] <0.248.0> Running boot step rabbit_mgmt_db_handler defined by app rabbitmq_management_agent
[info] <0.248.0> Management plugin: using rates mode 'basic'
[info] <0.248.0> Running boot step recovery defined by app rabbit
[info] <0.248.0> Running boot step empty_db_check defined by app rabbit
[info] <0.248.0> Will seed default virtual host and user...
[info] <0.248.0> Adding vhost '/' (description: 'Default virtual host', tags: [])
[info] <0.248.0> Inserted a virtual host record {vhost,<<"/">>,[],
[info] <0.248.0> #{description =>
[info] <0.248.0> <<"Default virtual host">>,
[info] <0.248.0> tags => []}}
[info] <0.647.0> Making sure data directory '/var/lib/rabbitmq/mnesia/rabbit@96047a93541b/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L' for vhost '/' exists
[info] <0.647.0> Setting segment_entry_count for vhost '/' with 0 queues to '2048'
[info] <0.647.0> Starting message stores for vhost '/'
[info] <0.656.0> Message store "628WB79CIFDYO9LJI6DKMI09L/msg_store_transient": using rabbit_msg_store_ets_index to provide index
[info] <0.647.0> Started message store of type transient for vhost '/'
[info] <0.660.0> Message store "628WB79CIFDYO9LJI6DKMI09L/msg_store_persistent": using rabbit_msg_store_ets_index to provide index
[warning] <0.660.0> Message store "628WB79CIFDYO9LJI6DKMI09L/msg_store_persistent": rebuilding indices from scratch
[info] <0.647.0> Started message store of type persistent for vhost '/'
[info] <0.647.0> Recovering 0 queues of type rabbit_classic_queue took 10ms
[info] <0.647.0> Recovering 0 queues of type rabbit_quorum_queue took 0ms
[info] <0.647.0> Recovering 0 queues of type rabbit_stream_queue took 0ms
[info] <0.248.0> Created user 'guest'
[info] <0.248.0> Successfully set user tags for user 'guest' to [administrator]
[info] <0.248.0> Successfully set permissions for user 'guest' in virtual host '/' to '.*', '.*', '.*'
[info] <0.248.0> Running boot step rabbit_observer_cli defined by app rabbit
[info] <0.248.0> Running boot step rabbit_looking_glass defined by app rabbit
[info] <0.248.0> Running boot step rabbit_core_metrics_gc defined by app rabbit
[info] <0.248.0> Running boot step background_gc defined by app rabbit
[info] <0.248.0> Running boot step routing_ready defined by app rabbit
[info] <0.248.0> Running boot step pre_flight defined by app rabbit
[info] <0.248.0> Running boot step notify_cluster defined by app rabbit
[info] <0.248.0> Running boot step networking defined by app rabbit
[info] <0.248.0> Running boot step rabbit_quorum_queue_periodic_membership_reconciliation defined by app rabbit
[info] <0.248.0> Running boot step definition_import_worker_pool defined by app rabbit
[info] <0.307.0> Starting worker pool 'definition_import_pool' with 20 processes in it
[info] <0.248.0> Running boot step cluster_name defined by app rabbit
[info] <0.248.0> Initialising internal cluster ID to 'rabbitmq-cluster-id-KZUR4V2gyllmnEtmkztbKQ'
[info] <0.248.0> Running boot step direct_client defined by app rabbit
[info] <0.248.0> Running boot step rabbit_federation_exchange defined by app rabbitmq_federation
[info] <0.248.0> Running boot step rabbit_management_load_definitions defined by app rabbitmq_management
[info] <0.713.0> Resetting node maintenance status
[warning] <0.736.0> Deprecated features: `management_metrics_collection`: Feature `management_metrics_collection` is deprecated.
[warning] <0.736.0> By default, this feature can still be used for now.
[warning] <0.736.0> Its use will not be permitted by default in a future minor RabbitMQ version and the feature will be removed from a future major RabbitMQ version; actual versions to be determined.
[warning] <0.736.0> To continue using this feature when it is not permitted by default, set the following parameter in your configuration:
[warning] <0.736.0> "deprecated_features.permit.management_metrics_collection = true"
[warning] <0.736.0> To test RabbitMQ as if the feature was removed, set this in your configuration:
[warning] <0.736.0> "deprecated_features.permit.management_metrics_collection = false"
[info] <0.773.0> Management plugin: HTTP (non-TLS) listener started on port 15672
[info] <0.804.0> Statistics database started.
[info] <0.803.0> Starting worker pool 'management_worker_pool' with 3 processes in it
[info] <0.823.0> Prometheus metrics: HTTP (non-TLS) listener started on port 15692
[info] <0.713.0> Ready to start client connection listeners
[info] <0.867.0> started TCP listener on [::]:5672
2024-04-23 10:48:37 completed with 6 plugins.
[info] <0.713.0> Server startup complete; 6 plugins started.
[info] <0.713.0> * rabbitmq_prometheus
[info] <0.713.0> * rabbitmq_federation
[info] <0.713.0> * rabbitmq_rtopic_exchange
[info] <0.713.0> * rabbitmq_management
[info] <0.713.0> * rabbitmq_management_agent
[info] <0.713.0> * rabbitmq_web_dispatch
[info] <0.9.0> Time to start RabbitMQ: 7066 ms
[info] <0.910.0> accepting AMQP connection <0.910.0> (172.24.0.1:43900 -> 172.24.0.2:5672)
[info] <0.910.0> connection <0.910.0> (172.24.0.1:43900 -> 172.24.0.2:5672): user 'guest' authenticated and granted access to vhost '/'
[error] <0.920.0> ** Generic server <0.920.0> terminating
[error] <0.920.0> ** Last message in was {'$gen_cast',
[error] <0.920.0> {method,
[error] <0.920.0> {'basic.publish',0,<<"email">>,
[error] <0.920.0> <<"validation_message.#">>,false,false},
[error] <0.920.0> {content,60,none,
[error] <0.920.0> <<0,0>>,
[error] <0.920.0> rabbit_framing_amqp_0_9_1,
[error] <0.920.0> [<<"\nFROM: [email protected]\nTO: [email protected]\nBODY: Hello !">>]},
[error] <0.920.0> flow}}
[error] <0.920.0> ** When Server state == {ch,
[error] <0.920.0> {conf,running,rabbit_framing_amqp_0_9_1,1,<0.910.0>,
[error] <0.920.0> <0.918.0>,<0.910.0>,
[error] <0.920.0> <<"172.24.0.1:43900 -> 172.24.0.2:5672">>,undefined,
[error] <0.920.0> {user,<<"guest">>,
[error] <0.920.0> [administrator],
[error] <0.920.0> [{rabbit_auth_backend_internal,
[error] <0.920.0> #Fun<rabbit_auth_backend_internal.3.111050101>}]},
[error] <0.920.0> <<"/">>,<<>>,<0.912.0>,
[error] <0.920.0> [{<<"authentication_failure_close">>,bool,true},
[error] <0.920.0> {<<"basic.nack">>,bool,true},
[error] <0.920.0> {<<"connection.blocked">>,bool,true},
[error] <0.920.0> {<<"consumer_cancel_notify">>,bool,true},
[error] <0.920.0> {<<"publisher_confirms">>,bool,true}],
[error] <0.920.0> none,0,134217728,1800000,#{},infinity,1000000000,
[error] <0.920.0> false},
[error] <0.920.0> {lstate,<0.919.0>,false},
[error] <0.920.0> none,1,
[error] <0.920.0> {0,[],[]},
[error] <0.920.0> {state,#{},erlang},
[error] <0.920.0> #{},#{},
[error] <0.920.0> {state,fine,5000,#Ref<0.3870059976.2552758274.96592>},
[error] <0.920.0> false,1,
[error] <0.920.0> {rabbit_confirms,undefined,#{}},
[error] <0.920.0> [],[],none,flow,[],
[error] <0.920.0> {rabbit_queue_type,#{}},
[error] <0.920.0> #Ref<0.3870059976.2552758274.96589>,false}
[error] <0.920.0> ** Reason for termination ==
[error] <0.920.0> ** {function_clause,
[error] <0.920.0> [{rabbit_exchange_type_rtopic,route,
[error] <0.920.0> [{exchange,
[error] <0.920.0> {resource,<<"/">>,exchange,<<"email">>},
[error] <0.920.0> 'x-rtopic',false,false,false,[],undefined,undefined,
[error] <0.920.0> undefined,
[error] <0.920.0> {[],[]},
[error] <0.920.0> #{user => <<"guest">>}},
[error] <0.920.0> {mc,mc_amqpl,
[error] <0.920.0> {content,60,
[error] <0.920.0> {'P_basic',undefined,undefined,undefined,undefined,
[error] <0.920.0> undefined,undefined,undefined,undefined,undefined,
[error] <0.920.0> undefined,undefined,undefined,undefined,undefined},
[error] <0.920.0> <<0,0>>,
[error] <0.920.0> rabbit_framing_amqp_0_9_1,
[error] <0.920.0> [<<"\nFROM: [email protected]\nTO: [email protected]\nBODY: Hello !">>]},
[error] <0.920.0> #{d => false,x => <<"email">>,
[error] <0.920.0> rk => [<<"validation_message.#">>],
[error] <0.920.0> rts => 1713862135026}}],
[error] <0.920.0> [{file,"rabbit_exchange_type_rtopic.erl"},{line,61}]},
[error] <0.920.0> {rabbit_exchange,route1,4,[{file,"rabbit_exchange.erl"},{line,388}]},
[error] <0.920.0> {rabbit_exchange,route,3,[{file,"rabbit_exchange.erl"},{line,369}]},
[error] <0.920.0> {rabbit_channel,handle_method,3,
[error] <0.920.0> [{file,"rabbit_channel.erl"},{line,1280}]},
[error] <0.920.0> {rabbit_channel,handle_cast,2,
[error] <0.920.0> [{file,"rabbit_channel.erl"},{line,649}]},
[error] <0.920.0> {gen_server2,handle_msg,2,[{file,"gen_server2.erl"},{line,1056}]},
[error] <0.920.0> {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,241}]}]}
[error] <0.920.0>
[error] <0.920.0> crasher:
[error] <0.920.0> initial call: rabbit_channel:init/1
[error] <0.920.0> pid: <0.920.0>
[error] <0.920.0> registered_name: []
[error] <0.920.0> exception exit: {function_clause,
[error] <0.920.0> [{rabbit_exchange_type_rtopic,route,
[error] <0.920.0> [{exchange,
[error] <0.920.0> {resource,<<"/">>,exchange,<<"email">>},
[error] <0.920.0> 'x-rtopic',false,false,false,[],undefined,undefined,
[error] <0.920.0> undefined,
[error] <0.920.0> {[],[]},
[error] <0.920.0> #{user => <<"guest">>}},
[error] <0.920.0> {mc,mc_amqpl,
[error] <0.920.0> {content,60,
[error] <0.920.0> {'P_basic',undefined,undefined,undefined,undefined,
[error] <0.920.0> undefined,undefined,undefined,undefined,undefined,
[error] <0.920.0> undefined,undefined,undefined,undefined,undefined},
[error] <0.920.0> <<0,0>>,
[error] <0.920.0> rabbit_framing_amqp_0_9_1,
[error] <0.920.0> [<<"\nFROM: [email protected]\nTO: [email protected]\nBODY: Hello !">>]},
[error] <0.920.0> #{d => false,x => <<"email">>,
[error] <0.920.0> rk => [<<"validation_message.#">>],
[error] <0.920.0> rts => 1713862135026}}],
[error] <0.920.0> [{file,"rabbit_exchange_type_rtopic.erl"},{line,61}]},
[error] <0.920.0> {rabbit_exchange,route1,4,
[error] <0.920.0> [{file,"rabbit_exchange.erl"},{line,388}]},
[error] <0.920.0> {rabbit_exchange,route,3,
[error] <0.920.0> [{file,"rabbit_exchange.erl"},{line,369}]},
[error] <0.920.0> {rabbit_channel,handle_method,3,
[error] <0.920.0> [{file,"rabbit_channel.erl"},{line,1280}]},
[error] <0.920.0> {rabbit_channel,handle_cast,2,
[error] <0.920.0> [{file,"rabbit_channel.erl"},{line,649}]},
[error] <0.920.0> {gen_server2,handle_msg,2,
[error] <0.920.0> [{file,"gen_server2.erl"},{line,1056}]},
[error] <0.920.0> {proc_lib,init_p_do_apply,3,
[error] <0.920.0> [{file,"proc_lib.erl"},{line,241}]}]}
[error] <0.920.0> in function gen_server2:terminate/3 (gen_server2.erl, line 1172)
[error] <0.920.0> ancestors: [<0.917.0>,<0.915.0>,<0.909.0>,<0.908.0>,<0.855.0>,<0.854.0>,
[error] <0.920.0> <0.853.0>,<0.851.0>,<0.850.0>,rabbit_sup,<0.248.0>]
[error] <0.920.0> message_queue_len: 1
[error] <0.920.0> messages: [{'$gen_cast',
[error] <0.920.0> {method,
[error] <0.920.0> {'channel.close',200,<<"Normal shutdown">>,0,0},
[error] <0.920.0> none,noflow}}]
[error] <0.920.0> links: [<0.917.0>]
[error] <0.920.0> dictionary: [{{xtype_to_module,'x-rtopic'},rabbit_exchange_type_rtopic},
[error] <0.920.0> {{credit_to,<0.910.0>},199},
[error] <0.920.0> {msg_size_for_gc,66},
[error] <0.920.0> {rand_seed,
[error] <0.920.0> {#{max => 288230376151711743,type => exsplus,
[error] <0.920.0> next => #Fun<rand.5.65977474>,
[error] <0.920.0> jump => #Fun<rand.3.65977474>},
[error] <0.920.0> [21257862708805905|122799696170352819]}},
[error] <0.920.0> {credit_flow_default_credit,{400,200}},
[error] <0.920.0> {channel_operation_timeout,15000},
[error] <0.920.0> {permission_cache_can_expire,false},
[error] <0.920.0> {process_name,
[error] <0.920.0> {rabbit_channel,
[error] <0.920.0> {<<"172.24.0.1:43900 -> 172.24.0.2:5672">>,1}}},
[error] <0.920.0> {permission_cache,
[error] <0.920.0> [{{resource,<<"/">>,exchange,<<"email">>},#{},write},
[error] <0.920.0> {{resource,<<"/">>,exchange,<<"email">>},
[error] <0.920.0> #{},configure}]}]
[error] <0.920.0> trap_exit: true
[error] <0.920.0> status: running
[error] <0.920.0> heap_size: 17731
[error] <0.920.0> stack_size: 28
[error] <0.920.0> reductions: 48793
[error] <0.920.0> neighbours:
[error] <0.920.0>
[error] <0.910.0> Error on AMQP connection <0.910.0> (172.24.0.1:43900 -> 172.24.0.2:5672, vhost: '/', user: 'guest', state: running), channel 1:
[error] <0.910.0> {function_clause,
[error] <0.910.0> [{rabbit_exchange_type_rtopic,route,
[error] <0.910.0> [{exchange,
[error] <0.910.0> {resource,<<"/">>,exchange,<<"email">>},
[error] <0.910.0> 'x-rtopic',false,false,false,[],undefined,undefined,undefined,
[error] <0.910.0> {[],[]},
[error] <0.910.0> #{user => <<"guest">>}},
[error] <0.910.0> {mc,mc_amqpl,
[error] <0.910.0> {content,60,
[error] <0.910.0> {'P_basic',undefined,undefined,undefined,undefined,
[error] <0.910.0> undefined,undefined,undefined,undefined,undefined,
[error] <0.910.0> undefined,undefined,undefined,undefined,undefined},
[error] <0.910.0> <<0,0>>,
[error] <0.910.0> rabbit_framing_amqp_0_9_1,
[error] <0.910.0> [<<"\nFROM: [email protected]\nTO: [email protected]\nBODY: Hello !">>]},
[error] <0.910.0> #{d => false,x => <<"email">>,
[error] <0.910.0> rk => [<<"validation_message.#">>],
[error] <0.910.0> rts => 1713862135026}}],
[error] <0.910.0> [{file,"rabbit_exchange_type_rtopic.erl"},{line,61}]},
[error] <0.910.0> {rabbit_exchange,route1,4,[{file,"rabbit_exchange.erl"},{line,388}]},
[error] <0.910.0> {rabbit_exchange,route,3,[{file,"rabbit_exchange.erl"},{line,369}]},
[error] <0.910.0> {rabbit_channel,handle_method,3,
[error] <0.910.0> [{file,"rabbit_channel.erl"},{line,1280}]},
[error] <0.910.0> {rabbit_channel,handle_cast,2,[{file,"rabbit_channel.erl"},{line,649}]},
[error] <0.910.0> {gen_server2,handle_msg,2,[{file,"gen_server2.erl"},{line,1056}]},
[error] <0.910.0> {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,241}]}]}
[warning] <0.910.0> Non-AMQP exit reason '{function_clause,
[warning] <0.910.0> [{rabbit_exchange_type_rtopic,route,
[warning] <0.910.0> [{exchange,
[warning] <0.910.0> {resource,<<"/">>,exchange,<<"email">>},
[warning] <0.910.0> 'x-rtopic',false,false,false,[],undefined,
[warning] <0.910.0> undefined,undefined,
[warning] <0.910.0> {[],[]},
[warning] <0.910.0> #{user => <<"guest">>}},
[warning] <0.910.0> {mc,mc_amqpl,
[warning] <0.910.0> {content,60,
[warning] <0.910.0> {'P_basic',undefined,undefined,undefined,
[warning] <0.910.0> undefined,undefined,undefined,undefined,
[warning] <0.910.0> undefined,undefined,undefined,undefined,
[warning] <0.910.0> undefined,undefined,undefined},
[warning] <0.910.0> <<0,0>>,
[warning] <0.910.0> rabbit_framing_amqp_0_9_1,
[warning] <0.910.0> [<<"\nFROM: [email protected]\nTO: [email protected]\nBODY: Hello !">>]},
[warning] <0.910.0> #{d => false,x => <<"email">>,
[warning] <0.910.0> rk => [<<"validation_message.#">>],
[warning] <0.910.0> rts => 1713862135026}}],
[warning] <0.910.0> [{file,"rabbit_exchange_type_rtopic.erl"},{line,61}]},
[warning] <0.910.0> {rabbit_exchange,route1,4,
[warning] <0.910.0> [{file,"rabbit_exchange.erl"},{line,388}]},
[warning] <0.910.0> {rabbit_exchange,route,3,
[warning] <0.910.0> [{file,"rabbit_exchange.erl"},{line,369}]},
[warning] <0.910.0> {rabbit_channel,handle_method,3,
[warning] <0.910.0> [{file,"rabbit_channel.erl"},{line,1280}]},
[warning] <0.910.0> {rabbit_channel,handle_cast,2,
[warning] <0.910.0> [{file,"rabbit_channel.erl"},{line,649}]},
[warning] <0.910.0> {gen_server2,handle_msg,2,
[warning] <0.910.0> [{file,"gen_server2.erl"},{line,1056}]},
[warning] <0.910.0> {proc_lib,init_p_do_apply,3,
[warning] <0.910.0> [{file,"proc_lib.erl"},{line,241}]}]}'
[error] <0.917.0> supervisor: {<0.917.0>,rabbit_channel_sup}
[error] <0.917.0> errorContext: child_terminated
[error] <0.917.0> reason: {function_clause,
[error] <0.917.0> [{rabbit_exchange_type_rtopic,route,
[error] <0.917.0> [{exchange,
[error] <0.917.0> {resource,<<"/">>,exchange,<<"email">>},
[error] <0.917.0> 'x-rtopic',false,false,false,[],undefined,undefined,
[error] <0.917.0> undefined,
[error] <0.917.0> {[],[]},
[error] <0.917.0> #{user => <<"guest">>}},
[error] <0.917.0> {mc,mc_amqpl,
[error] <0.917.0> {content,60,
[error] <0.917.0> {'P_basic',undefined,undefined,undefined,
[error] <0.917.0> undefined,undefined,undefined,undefined,
[error] <0.917.0> undefined,undefined,undefined,undefined,
[error] <0.917.0> undefined,undefined,undefined},
[error] <0.917.0> <<0,0>>,
[error] <0.917.0> rabbit_framing_amqp_0_9_1,
[error] <0.917.0> [<<"\nFROM: [email protected]\nTO: [email protected]\nBODY: Hello !">>]},
[error] <0.917.0> #{d => false,x => <<"email">>,
[error] <0.917.0> rk => [<<"validation_message.#">>],
[error] <0.917.0> rts => 1713862135026}}],
[error] <0.917.0> [{file,"rabbit_exchange_type_rtopic.erl"},{line,61}]},
[error] <0.917.0> {rabbit_exchange,route1,4,
[error] <0.917.0> [{file,"rabbit_exchange.erl"},{line,388}]},
[error] <0.917.0> {rabbit_exchange,route,3,
[error] <0.917.0> [{file,"rabbit_exchange.erl"},{line,369}]},
[error] <0.917.0> {rabbit_channel,handle_method,3,
[error] <0.917.0> [{file,"rabbit_channel.erl"},{line,1280}]},
[error] <0.917.0> {rabbit_channel,handle_cast,2,
[error] <0.917.0> [{file,"rabbit_channel.erl"},{line,649}]},
[error] <0.917.0> {gen_server2,handle_msg,2,
[error] <0.917.0> [{file,"gen_server2.erl"},{line,1056}]},
[error] <0.917.0> {proc_lib,init_p_do_apply,3,
[error] <0.917.0> [{file,"proc_lib.erl"},{line,241}]}]}
[error] <0.917.0> offender: [{pid,<0.920.0>},
[error] <0.917.0> {id,channel},
[error] <0.917.0> {mfargs,
[error] <0.917.0> {rabbit_channel,start_link,
[error] <0.917.0> [1,<0.910.0>,<0.918.0>,<0.910.0>,
[error] <0.917.0> <<"172.24.0.1:43900 -> 172.24.0.2:5672">>,
[error] <0.917.0> rabbit_framing_amqp_0_9_1,
[error] <0.917.0> {user,<<"guest">>,
[error] <0.917.0> [administrator],
[error] <0.917.0> [{rabbit_auth_backend_internal,
[error] <0.917.0> #Fun<rabbit_auth_backend_internal.3.111050101>}]},
[error] <0.917.0> <<"/">>,
[error] <0.917.0> [{<<"authentication_failure_close">>,bool,true},
[error] <0.917.0> {<<"basic.nack">>,bool,true},
[error] <0.917.0> {<<"connection.blocked">>,bool,true},
[error] <0.917.0> {<<"consumer_cancel_notify">>,bool,true},
[error] <0.917.0> {<<"publisher_confirms">>,bool,true}],
[error] <0.917.0> <0.912.0>,<0.919.0>]}},
[error] <0.917.0> {restart_type,transient},
[error] <0.917.0> {significant,true},
[error] <0.917.0> {shutdown,70000},
[error] <0.917.0> {child_type,worker}]
[error] <0.917.0>
[error] <0.917.0> supervisor: {<0.917.0>,rabbit_channel_sup}
[error] <0.917.0> errorContext: shutdown
[error] <0.917.0> reason: reached_max_restart_intensity
[error] <0.917.0> offender: [{pid,<0.920.0>},
[error] <0.917.0> {id,channel},
[error] <0.917.0> {mfargs,
[error] <0.917.0> {rabbit_channel,start_link,
[error] <0.917.0> [1,<0.910.0>,<0.918.0>,<0.910.0>,
[error] <0.917.0> <<"172.24.0.1:43900 -> 172.24.0.2:5672">>,
[error] <0.917.0> rabbit_framing_amqp_0_9_1,
[error] <0.917.0> {user,<<"guest">>,
[error] <0.917.0> [administrator],
[error] <0.917.0> [{rabbit_auth_backend_internal,
[error] <0.917.0> #Fun<rabbit_auth_backend_internal.3.111050101>}]},
[error] <0.917.0> <<"/">>,
[error] <0.917.0> [{<<"authentication_failure_close">>,bool,true},
[error] <0.917.0> {<<"basic.nack">>,bool,true},
[error] <0.917.0> {<<"connection.blocked">>,bool,true},
[error] <0.917.0> {<<"consumer_cancel_notify">>,bool,true},
[error] <0.917.0> {<<"publisher_confirms">>,bool,true}],
[error] <0.917.0> <0.912.0>,<0.919.0>]}},
[error] <0.917.0> {restart_type,transient},
[error] <0.917.0> {significant,true},
[error] <0.917.0> {shutdown,70000},
[error] <0.917.0> {child_type,worker}]
[error] <0.917.0>
[info] <0.910.0> closing AMQP connection <0.910.0> (172.24.0.1:43900 -> 172.24.0.2:5672, vhost: '/', user: 'guest')
Setup
- Docker Desktop on Windows 11, containers executing on WSL2
- RabbitMQ3.13-management docker image with rabbitmq_rtopic_exchange inside
FROM rabbitmq:3.13-management
ADD --chown=rabbitmq:rabbitmq --chmod=555 \
https://github.com/rabbitmq/rabbitmq-rtopic-exchange/releases/download/v3.12.0/rabbitmq_rtopic_exchange-3.12.0.ez plugins/rabbitmq_rtopic_exchange-3.12.0.ez
RUN rabbitmq-plugins enable rabbitmq_rtopic_exchange
Reproducing
- Launch RabbitMQ 3.13
- Enable the latest published archive of the extension
rabbitmq_rtopic_exchange
(3.12.0) - Execute the following python code (assuming pika is installed)
from pika import BlockingConnection, ConnectionParameters
connection = BlockingConnection(
ConnectionParameters(host='localhost')
)
channel = connection.channel()
channel.exchange_declare(exchange="test-fail", exchange_type='x-rtopic')
channel.basic_publish(routing_key="", exchange="test-fail", body="test")
connection.close()