Stream operation that produces an error fails with a protocol Enumerable not implemented
lukebakken opened this issue · 2 comments
lukebakken commented
https://groups.google.com/d/topic/rabbitmq-users/m61ieh2LBjs/discussion
# rabbitmqctl list_queues >queues.txt
** (Protocol.UndefinedError) protocol Enumerable not implemented for :error. This protocol is implemented for: Date.Range, File.Stream, Function, GenEvent.Stream, HashDict, HashSet, IO.Stream, List, Map, MapSet, Range, Stream, Date.Range, File.Stream, Function, GenEvent.Stream, HashDict, HashSet, IO.Stream, List, Map, MapSet, Range, Stream
(elixir) /Users/jose/OSS/elixir/lib/elixir/lib/enum.ex:1: Enumerable.impl_for!/1
(elixir) /Users/jose/OSS/elixir/lib/elixir/lib/enum.ex:141: Enumerable.reduce/3
(elixir) lib/stream.ex:936: Stream.do_enum_transform/7
(elixir) lib/enum.ex:1990: Enum.reduce_while/3
(rabbitmqctl) lib/rabbitmq/cli/core/output.ex:65: RabbitMQ.CLI.Core.Output.print_output_0/3
(rabbitmqctl) lib/rabbitmq/cli/core/output.ex:40: RabbitMQ.CLI.Core.Output.print_output/3
(rabbitmqctl) lib/rabbitmqctl.ex:190: RabbitMQCtl.process_output/3
(rabbitmqctl) lib/rabbitmqctl.ex:45: RabbitMQCtl.main/1
The cli would print most of the queues and then eventually hang. It would sometimes log the above error.
The version we are on is RabbitMQ 3.7.13 with Erlang 20.3.8.14.
michaelklishin commented
A stream operation returned an :error
. We should make sure that it doesn't block the command and if possible, provide more context.
lukebakken commented
Yep, those are my goals