const bool host_updated = updateDynamicHostList(new_hosts, hosts_, hosts_added, hosts_removed,
return Network::Utility::parseInternetAddressNoThrow(array[0].asString(), array[1].asInteger(),
* We use the count of hostnames that require resolution to decide when the resolution process is
* stop the process. If we replica resolution fails, we simply log a warning, and move to resolving
for (uint64_t replica_idx = 0; replica_idx < slot.replicas_to_resolve_.size(); replica_idx++) {
if (value->type() != NetworkFilters::Common::Redis::RespType::Array || value->asArray().empty()) {
ClusterSlot slot(slot_range[SlotRangeStart].asInteger(), slot_range[SlotRangeEnd].asInteger(),
if (array.size() < 2 || array[0].type() != NetworkFilters::Common::Redis::RespType::BulkString ||
absl::StatusOr<std::pair<Upstream::ClusterImplBaseSharedPtr, Upstream::ThreadAwareLoadBalancerPtr>>