Skip to content

Commit

Permalink
Merge pull request #395 from shamilish/randomize-host-to-fetch-metadata
Browse files Browse the repository at this point in the history
Don't always send update metadata requests to the same broker
  • Loading branch information
joshuawscott committed Jan 21, 2020
2 parents cabdbac + 411396b commit c1f94e3
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
4 changes: 3 additions & 1 deletion lib/kafka_ex/new/client.ex
Expand Up @@ -442,7 +442,9 @@ defmodule KafkaEx.New.Client do
end

defp first_broker_response(request, brokers, timeout) do
Enum.find_value(brokers, fn broker ->
brokers
|> Enum.shuffle()
|> Enum.find_value(brokers, fn broker ->
if Broker.connected?(broker) do
try_broker(broker, request, timeout)
end
Expand Down
4 changes: 3 additions & 1 deletion lib/kafka_ex/server.ex
Expand Up @@ -974,7 +974,9 @@ defmodule KafkaEx.Server do
end

defp first_broker_response(request, brokers, timeout) do
Enum.find_value(brokers, fn broker ->
brokers
|> Enum.shuffle()
|> Enum.find_value(fn broker ->
if Broker.connected?(broker) do
# credo:disable-for-next-line Credo.Check.Refactor.Nesting
case NetworkClient.send_sync_request(broker, request, timeout) do
Expand Down

0 comments on commit c1f94e3

Please sign in to comment.