rabbitmq / rabbitmq-server

Open source RabbitMQ: core server and tier 1 (built-in) plugins
https://www.rabbitmq.com/
Other
12.33k stars 3.92k forks source link

rabbitmq-streams list_stream_consumers fails #12854

Open ankitgr8 opened 5 hours ago

ankitgr8 commented 5 hours ago

Describe the bug

ENV --- 3 node rabbitmq cluster running 3.13.7 version... in a kuberneetes environment (AKS environement - Azure Kuberneetes Service). while generating the rabbitmq docker file we enable the stream plugin in offline node COMMAND - rabbitmq-plugins enable --offline rabbitmq_stream

Once the cluster is UP.. the below command fails.

[root@rabbitmq-cluster-0 rabbitmq]# rabbitmq-streams list_stream_consumers Listing stream consumers ... %Protocol.UndefinedError{protocol: Enumerable, value: {:badrpc, {:EXIT, {:normal, {:gen_statem, :call, [#PID<21085.212228472.0>, {:info , [:vhost]}, :infinity]}}}}, description: ""}

But few other commands are still working rabbitmq-streams [--node ] [--longnames] [--quiet] list_stream_tracking [--all | --offset | --writer] [--vhost ] [root@rabbitmq-cluster-0 rabbitmq]# rabbitmq-streams list_stream_tracking gms2ita Listing tracking information for stream gms2ita ... ┌────────┬────────────────────┬────────────────┐ │ type │ name │ tracking_value │ ├────────┼────────────────────┼────────────────┤ │ offset │ dcs-kafka-consumer │ 69854 │ └────────┴────────────────────┴────────────────┘

rabbitmq-plugin DETAILS

[root@rabbitmq-cluster-0 rabbitmq]# rabbitmq-plugins list | grep stream [E*] rabbitmq_stream 3.13.7 [ ] rabbitmq_stream_management 3.13.7 [root@rabbitmq-cluster-0 rabbitmq]#

Why few command from the same plugin work and some not?

Reproduction steps

  1. 3 node rabbitmq cluster k8s
  2. enable the stream plugin in offline mode while generating the docker file
  3. Once the cluster is up using the same docker file-- the rabbitmq cluster was upgraded .. not a fresh installation and the upgrade was rolling upgrade
  4. The cli rabbitmq-stream list_stream_consumer does not work ...

Expected behavior

rabbitmq-streams list_stream_consumers fails should work post rabbitmq-stream plugin is enabled

Additional context

No response

ankitgr8 commented 3 hours ago

Do we want any specific PORT for rabbitmq-stream cli to be open for talking to the nodes accross cluster nodes

acogoluegnes commented 58 minutes ago

Do we want any specific PORT for rabbitmq-stream cli to be open for talking to the nodes accross cluster nodes

This is likely to be the problem. list_stream_consumers contacts all the cluster nodes, whereas list_stream_tracking contacts only the local node.