#include <grpc/support/port_platform.h>
#include <inttypes.h>
#include <stddef.h>
#include <algorithm>
#include <map>
#include <memory>
#include <set>
#include <string>
#include <utility>
#include <vector>
#include "absl/container/inlined_vector.h"
#include "absl/memory/memory.h"
#include "absl/status/status.h"
#include "absl/status/statusor.h"
#include "absl/strings/str_cat.h"
#include "absl/strings/string_view.h"
#include "absl/types/optional.h"
#include <grpc/impl/codegen/connectivity_state.h>
#include <grpc/impl/codegen/grpc_types.h>
#include <grpc/support/log.h>
#include "src/core/ext/filters/client_channel/lb_policy.h"
#include "src/core/ext/filters/client_channel/lb_policy/address_filtering.h"
#include "src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h"
#include "src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h"
#include "src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h"
#include "src/core/ext/filters/client_channel/lb_policy/xds/xds.h"
#include "src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h"
#include "src/core/ext/filters/client_channel/lb_policy_factory.h"
#include "src/core/ext/filters/client_channel/lb_policy_registry.h"
#include "src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h"
#include "src/core/ext/filters/client_channel/subchannel_interface.h"
#include "src/core/ext/xds/xds_bootstrap.h"
#include "src/core/ext/xds/xds_client.h"
#include "src/core/ext/xds/xds_client_stats.h"
#include "src/core/ext/xds/xds_endpoint.h"
#include "src/core/ext/xds/xds_resource_type_impl.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/config/core_configuration.h"
#include "src/core/lib/debug/trace.h"
#include "src/core/lib/gpr/string.h"
#include "src/core/lib/gprpp/debug_location.h"
#include "src/core/lib/gprpp/orphanable.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/gprpp/time.h"
#include "src/core/lib/iomgr/error.h"
#include "src/core/lib/iomgr/pollset_set.h"
#include "src/core/lib/iomgr/work_serializer.h"
#include "src/core/lib/json/json.h"
#include "src/core/lib/resolver/resolver.h"
#include "src/core/lib/resolver/resolver_registry.h"
#include "src/core/lib/resolver/server_address.h"
#include "src/core/lib/transport/connectivity_state.h"
Go to the source code of this file.
Namespaces | |
grpc_core | |
Macros | |
#define | GRPC_EDS_DEFAULT_FALLBACK_TIMEOUT 10000 |
Functions | |
void | grpc_lb_policy_xds_cluster_resolver_init () |
void | grpc_lb_policy_xds_cluster_resolver_shutdown () |
Variables | |
TraceFlag | grpc_core::grpc_lb_xds_cluster_resolver_trace (false, "xds_cluster_resolver_lb") |
#define GRPC_EDS_DEFAULT_FALLBACK_TIMEOUT 10000 |
Definition at line 75 of file xds_cluster_resolver.cc.
void grpc_lb_policy_xds_cluster_resolver_init | ( | ) |
Definition at line 1273 of file xds_cluster_resolver.cc.
void grpc_lb_policy_xds_cluster_resolver_shutdown | ( | ) |
Definition at line 1279 of file xds_cluster_resolver.cc.
|
private |
Definition at line 356 of file xds_cluster_resolver.cc.
|
private |
Definition at line 365 of file xds_cluster_resolver.cc.
std::string cluster_name |
Definition at line 91 of file xds_cluster_resolver.cc.
|
private |
Definition at line 357 of file xds_cluster_resolver.cc.
OrphanablePtr<DiscoveryMechanism> discovery_mechanism |
Definition at line 295 of file xds_cluster_resolver.cc.
|
private |
Definition at line 238 of file xds_cluster_resolver.cc.
|
private |
Definition at line 127 of file xds_cluster_resolver.cc.
std::string dns_hostname |
Definition at line 100 of file xds_cluster_resolver.cc.
std::string eds_service_name |
Definition at line 99 of file xds_cluster_resolver.cc.
|
private |
Definition at line 169 of file xds_cluster_resolver.cc.
absl::optional<XdsEndpointResource> latest_update |
Definition at line 297 of file xds_cluster_resolver.cc.
absl::optional<XdsBootstrap::XdsServer> lrs_load_reporting_server |
Definition at line 92 of file xds_cluster_resolver.cc.
uint32_t max_concurrent_requests |
Definition at line 93 of file xds_cluster_resolver.cc.
size_t next_available_child_number = 0 |
Definition at line 300 of file xds_cluster_resolver.cc.
absl::optional<Json::Object> outlier_detection_lb_config |
Definition at line 101 of file xds_cluster_resolver.cc.
|
private |
Definition at line 167 of file xds_cluster_resolver.cc.
std::vector<size_t > priority_child_numbers |
Definition at line 299 of file xds_cluster_resolver.cc.
|
private |
Definition at line 291 of file xds_cluster_resolver.cc.
Definition at line 360 of file xds_cluster_resolver.cc.
OPENSSL_EXPORT const char int type |
Definition at line 98 of file xds_cluster_resolver.cc.
|
private |
Definition at line 252 of file xds_cluster_resolver.cc.
|
private |
Definition at line 353 of file xds_cluster_resolver.cc.
|
private |
Definition at line 331 of file xds_cluster_resolver.cc.
|
private |
Definition at line 128 of file xds_cluster_resolver.cc.