GRPC Core
9.0.0
|
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/client_channel.h"
#include <inttypes.h>
#include <limits.h>
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
#include <set>
#include <grpc/support/alloc.h>
#include <grpc/support/log.h>
#include <grpc/support/string_util.h>
#include <grpc/support/sync.h>
#include "src/core/ext/filters/client_channel/backend_metric.h"
#include "src/core/ext/filters/client_channel/backup_poller.h"
#include "src/core/ext/filters/client_channel/global_subchannel_pool.h"
#include "src/core/ext/filters/client_channel/http_connect_handshaker.h"
#include "src/core/ext/filters/client_channel/lb_policy_registry.h"
#include "src/core/ext/filters/client_channel/local_subchannel_pool.h"
#include "src/core/ext/filters/client_channel/proxy_mapper_registry.h"
#include "src/core/ext/filters/client_channel/resolver_registry.h"
#include "src/core/ext/filters/client_channel/resolver_result_parsing.h"
#include "src/core/ext/filters/client_channel/resolving_lb_policy.h"
#include "src/core/ext/filters/client_channel/retry_throttle.h"
#include "src/core/ext/filters/client_channel/service_config.h"
#include "src/core/ext/filters/client_channel/subchannel.h"
#include "src/core/ext/filters/deadline/deadline_filter.h"
#include "src/core/lib/backoff/backoff.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/channel/connected_channel.h"
#include "src/core/lib/channel/status_util.h"
#include "src/core/lib/gprpp/inlined_vector.h"
#include "src/core/lib/gprpp/manual_constructor.h"
#include "src/core/lib/gprpp/map.h"
#include "src/core/lib/gprpp/sync.h"
#include "src/core/lib/iomgr/combiner.h"
#include "src/core/lib/iomgr/iomgr.h"
#include "src/core/lib/iomgr/polling_entity.h"
#include "src/core/lib/profiling/timers.h"
#include "src/core/lib/slice/slice_internal.h"
#include "src/core/lib/slice/slice_string_helpers.h"
#include "src/core/lib/surface/channel.h"
#include "src/core/lib/transport/connectivity_state.h"
#include "src/core/lib/transport/error_utils.h"
#include "src/core/lib/transport/metadata.h"
#include "src/core/lib/transport/metadata_batch.h"
#include "src/core/lib/transport/static_metadata.h"
#include "src/core/lib/transport/status_metadata.h"
Namespaces | |
grpc_core | |
Round Robin Policy. | |
Macros | |
#define | DEFAULT_PER_RPC_RETRY_BUFFER_SIZE (256 << 10) |
#define | RETRY_BACKOFF_JITTER 0.2 |
#define | MAX_PENDING_BATCHES 6 |
Functions | |
grpc_connectivity_state | grpc_client_channel_check_connectivity_state (grpc_channel_element *elem, int try_to_connect) |
int | grpc_client_channel_num_external_connectivity_watchers (grpc_channel_element *elem) |
void | grpc_client_channel_watch_connectivity_state (grpc_channel_element *elem, grpc_polling_entity pollent, grpc_connectivity_state *state, grpc_closure *closure, grpc_closure *watcher_timer_init) |
void | grpc_client_channel_start_connectivity_watch (grpc_channel_element *elem, grpc_connectivity_state initial_state, grpc_core::OrphanablePtr< grpc_core::AsyncConnectivityStateWatcherInterface > watcher) |
void | grpc_client_channel_stop_connectivity_watch (grpc_channel_element *elem, grpc_core::AsyncConnectivityStateWatcherInterface *watcher) |
grpc_core::RefCountedPtr< grpc_core::SubchannelCall > | grpc_client_channel_get_subchannel_call (grpc_call_element *elem) |
Variables | |
TraceFlag | grpc_core::grpc_client_channel_call_trace (false, "client_channel_call") |
TraceFlag | grpc_core::grpc_client_channel_routing_trace (false, "client_channel_routing") |
const grpc_channel_filter | grpc_client_channel_filter |
#define DEFAULT_PER_RPC_RETRY_BUFFER_SIZE (256 << 10) |
#define MAX_PENDING_BATCHES 6 |
#define RETRY_BACKOFF_JITTER 0.2 |
grpc_connectivity_state grpc_client_channel_check_connectivity_state | ( | grpc_channel_element * | elem, |
int | try_to_connect | ||
) |
grpc_core::RefCountedPtr<grpc_core::SubchannelCall> grpc_client_channel_get_subchannel_call | ( | grpc_call_element * | elem | ) |
int grpc_client_channel_num_external_connectivity_watchers | ( | grpc_channel_element * | elem | ) |
void grpc_client_channel_start_connectivity_watch | ( | grpc_channel_element * | elem, |
grpc_connectivity_state | initial_state, | ||
grpc_core::OrphanablePtr< grpc_core::AsyncConnectivityStateWatcherInterface > | watcher | ||
) |
void grpc_client_channel_stop_connectivity_watch | ( | grpc_channel_element * | elem, |
grpc_core::AsyncConnectivityStateWatcherInterface * | watcher | ||
) |
void grpc_client_channel_watch_connectivity_state | ( | grpc_channel_element * | elem, |
grpc_polling_entity | pollent, | ||
grpc_connectivity_state * | state, | ||
grpc_closure * | closure, | ||
grpc_closure * | watcher_timer_init | ||
) |
grpc_transport_stream_op_batch_payload batch_payload |
grpc_transport_stream_stats collect_stats |
bool completed_recv_initial_metadata |
size_t completed_recv_message_count = 0 |
bool completed_recv_trailing_metadata |
bool completed_send_initial_metadata |
size_t completed_send_message_count = 0 |
bool completed_send_trailing_metadata |
grpc_call_element* elem |
const grpc_channel_filter grpc_client_channel_filter |
QueuedPick* next = nullptr |
grpc_closure on_complete |
grpc_metadata_batch recv_initial_metadata |
grpc_error* recv_initial_metadata_error = GRPC_ERROR_NONE |
static void recv_initial_metadata_ready |
SubchannelCallBatchData* recv_initial_metadata_ready_deferred_batch |
OrphanablePtr<ByteStream> recv_message |
grpc_error* recv_message_error = GRPC_ERROR_NONE |
static void recv_message_ready |
SubchannelCallBatchData* recv_message_ready_deferred_batch = nullptr |
grpc_metadata_batch recv_trailing_metadata |
SubchannelCallBatchData* recv_trailing_metadata_internal_batch = nullptr |
static void recv_trailing_metadata_ready |
gpr_refcount refs |
bool retry_dispatched |
grpc_metadata_batch send_initial_metadata |
grpc_linked_mdelem* send_initial_metadata_storage |
ManualConstructor<ByteStreamCache::CachingByteStream> send_message |
bool send_ops_cached |
grpc_metadata_batch send_trailing_metadata |
grpc_linked_mdelem* send_trailing_metadata_storage |
bool started_recv_initial_metadata |
size_t started_recv_message_count = 0 |
bool started_recv_trailing_metadata |
bool started_send_initial_metadata |
size_t started_send_message_count = 0 |
bool started_send_trailing_metadata |
RefCountedPtr<SubchannelCall> subchannel_call |
bool trailing_metadata_available = false |