grpc 1.8.7 → 1.9.0.pre1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of grpc might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Makefile +549 -325
- data/include/grpc/impl/codegen/grpc_types.h +1 -2
- data/include/grpc/impl/codegen/port_platform.h +46 -5
- data/include/grpc/impl/codegen/slice.h +1 -2
- data/include/grpc/module.modulemap +0 -2
- data/include/grpc/slice_buffer.h +1 -2
- data/include/grpc/support/log.h +4 -2
- data/include/grpc/support/thd.h +4 -1
- data/include/grpc/support/tls.h +6 -0
- data/include/grpc/support/tls_gcc.h +5 -40
- data/include/grpc/support/tls_msvc.h +9 -0
- data/include/grpc/support/tls_pthread.h +9 -0
- data/src/core/ext/filters/client_channel/backup_poller.cc +32 -29
- data/src/core/ext/filters/client_channel/backup_poller.h +2 -2
- data/src/core/ext/filters/client_channel/channel_connectivity.cc +26 -32
- data/src/core/ext/filters/client_channel/client_channel.cc +325 -356
- data/src/core/ext/filters/client_channel/client_channel.h +4 -12
- data/src/core/ext/filters/client_channel/client_channel_factory.cc +9 -14
- data/src/core/ext/filters/client_channel/client_channel_factory.h +7 -20
- data/src/core/ext/filters/client_channel/client_channel_plugin.cc +7 -10
- data/src/core/ext/filters/client_channel/connector.cc +6 -7
- data/src/core/ext/filters/client_channel/connector.h +6 -16
- data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +38 -50
- data/src/core/ext/filters/client_channel/http_connect_handshaker.h +0 -8
- data/src/core/ext/filters/client_channel/http_proxy.cc +9 -13
- data/src/core/ext/filters/client_channel/http_proxy.h +0 -8
- data/src/core/ext/filters/client_channel/lb_policy.cc +72 -94
- data/src/core/ext/filters/client_channel/lb_policy.h +83 -92
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +14 -19
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +0 -8
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +474 -591
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +0 -8
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +2 -10
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +6 -6
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +0 -8
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +0 -9
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +0 -9
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c +3 -4
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.h +9 -12
- data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +160 -182
- data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +182 -221
- data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.cc +24 -35
- data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +9 -20
- data/src/core/ext/filters/client_channel/lb_policy_factory.cc +6 -9
- data/src/core/ext/filters/client_channel/lb_policy_factory.h +4 -15
- data/src/core/ext/filters/client_channel/lb_policy_registry.cc +3 -3
- data/src/core/ext/filters/client_channel/lb_policy_registry.h +1 -9
- data/src/core/ext/filters/client_channel/parse_address.cc +1 -1
- data/src/core/ext/filters/client_channel/parse_address.h +0 -8
- data/src/core/ext/filters/client_channel/proxy_mapper.cc +6 -8
- data/src/core/ext/filters/client_channel/proxy_mapper.h +6 -16
- data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +13 -17
- data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +2 -12
- data/src/core/ext/filters/client_channel/resolver.cc +11 -13
- data/src/core/ext/filters/client_channel/resolver.h +14 -25
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +57 -70
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +2 -12
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +23 -31
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +27 -45
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +5 -15
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +9 -11
- data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +53 -66
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +25 -33
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +1 -9
- data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +26 -35
- data/src/core/ext/filters/client_channel/resolver_factory.cc +2 -3
- data/src/core/ext/filters/client_channel/resolver_factory.h +2 -12
- data/src/core/ext/filters/client_channel/resolver_registry.cc +12 -15
- data/src/core/ext/filters/client_channel/resolver_registry.h +3 -12
- data/src/core/ext/filters/client_channel/retry_throttle.h +0 -8
- data/src/core/ext/filters/client_channel/subchannel.cc +289 -301
- data/src/core/ext/filters/client_channel/subchannel.h +57 -84
- data/src/core/ext/filters/client_channel/subchannel_index.cc +30 -33
- data/src/core/ext/filters/client_channel/subchannel_index.h +4 -16
- data/src/core/ext/filters/client_channel/uri_parser.cc +13 -17
- data/src/core/ext/filters/client_channel/uri_parser.h +1 -10
- data/src/core/ext/filters/deadline/deadline_filter.cc +49 -67
- data/src/core/ext/filters/deadline/deadline_filter.h +4 -14
- data/src/core/ext/filters/http/client/http_client_filter.cc +60 -77
- data/src/core/ext/filters/http/client/http_client_filter.h +0 -8
- data/src/core/ext/filters/http/http_filters_plugin.cc +4 -6
- data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +63 -79
- data/src/core/ext/filters/http/message_compress/message_compress_filter.h +0 -8
- data/src/core/ext/filters/http/server/http_server_filter.cc +57 -71
- data/src/core/ext/filters/http/server/http_server_filter.h +0 -8
- data/src/core/ext/filters/load_reporting/server_load_reporting_filter.cc +19 -24
- data/src/core/ext/filters/load_reporting/server_load_reporting_filter.h +0 -8
- data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.cc +3 -3
- data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.h +0 -8
- data/src/core/ext/filters/max_age/max_age_filter.cc +49 -62
- data/src/core/ext/filters/max_age/max_age_filter.h +0 -8
- data/src/core/ext/filters/message_size/message_size_filter.cc +23 -29
- data/src/core/ext/filters/message_size/message_size_filter.h +0 -8
- data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc +15 -18
- data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h +0 -8
- data/src/core/ext/filters/workarounds/workaround_utils.h +0 -8
- data/src/core/ext/transport/chttp2/alpn/alpn.h +0 -8
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +33 -40
- data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -8
- data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +15 -17
- data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +8 -8
- data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +23 -28
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +50 -57
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +1 -10
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +3 -3
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +7 -10
- data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +5 -6
- data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +7 -9
- data/src/core/ext/transport/chttp2/transport/bin_decoder.h +2 -11
- data/src/core/ext/transport/chttp2/transport/bin_encoder.h +1 -9
- data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +10 -2
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +516 -636
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +4 -11
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +29 -13
- data/src/core/ext/transport/chttp2/transport/flow_control.h +196 -53
- data/src/core/ext/transport/chttp2/transport/frame.h +0 -8
- data/src/core/ext/transport/chttp2/transport/frame_data.cc +31 -33
- data/src/core/ext/transport/chttp2/transport/frame_data.h +3 -12
- data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +2 -3
- data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -10
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +5 -6
- data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -9
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +2 -3
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -10
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +8 -3
- data/src/core/ext/transport/chttp2/transport/frame_settings.h +1 -10
- data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +8 -8
- data/src/core/ext/transport/chttp2/transport/frame_window_update.h +5 -11
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +63 -81
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +2 -12
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +230 -318
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +6 -19
- data/src/core/ext/transport/chttp2/transport/hpack_table.cc +14 -20
- data/src/core/ext/transport/chttp2/transport/hpack_table.h +5 -16
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +0 -7
- data/src/core/ext/transport/chttp2/transport/huffsyms.h +0 -8
- data/src/core/ext/transport/chttp2/transport/incoming_metadata.cc +8 -11
- data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +4 -13
- data/src/core/ext/transport/chttp2/transport/internal.h +51 -75
- data/src/core/ext/transport/chttp2/transport/parsing.cc +83 -109
- data/src/core/ext/transport/chttp2/transport/stream_lists.cc +2 -0
- data/src/core/ext/transport/chttp2/transport/stream_map.h +0 -8
- data/src/core/ext/transport/chttp2/transport/varint.h +0 -8
- data/src/core/ext/transport/chttp2/transport/writing.cc +61 -65
- data/src/core/ext/transport/inproc/inproc_plugin.cc +2 -4
- data/src/core/ext/transport/inproc/inproc_transport.cc +177 -188
- data/src/core/ext/transport/inproc/inproc_transport.h +0 -8
- data/src/core/lib/backoff/backoff.cc +39 -44
- data/src/core/lib/backoff/backoff.h +61 -57
- data/src/core/lib/channel/channel_args.cc +8 -10
- data/src/core/lib/channel/channel_args.h +4 -13
- data/src/core/lib/channel/channel_stack.cc +19 -27
- data/src/core/lib/channel/channel_stack.h +27 -47
- data/src/core/lib/channel/channel_stack_builder.cc +11 -14
- data/src/core/lib/channel/channel_stack_builder.h +4 -15
- data/src/core/lib/channel/connected_channel.cc +23 -36
- data/src/core/lib/channel/connected_channel.h +1 -10
- data/src/core/lib/channel/handshaker.cc +31 -40
- data/src/core/lib/channel/handshaker.h +14 -25
- data/src/core/lib/channel/handshaker_factory.cc +6 -6
- data/src/core/lib/channel/handshaker_factory.h +5 -15
- data/src/core/lib/channel/handshaker_registry.cc +9 -13
- data/src/core/lib/channel/handshaker_registry.h +2 -11
- data/src/core/lib/compression/algorithm_metadata.h +0 -8
- data/src/core/lib/compression/message_compress.cc +19 -23
- data/src/core/lib/compression/message_compress.h +2 -12
- data/src/core/lib/compression/stream_compression.cc +1 -1
- data/src/core/lib/compression/stream_compression.h +0 -8
- data/src/core/lib/compression/stream_compression_gzip.cc +12 -11
- data/src/core/lib/compression/stream_compression_gzip.h +0 -8
- data/src/core/lib/compression/stream_compression_identity.h +0 -8
- data/src/core/lib/debug/stats.cc +4 -4
- data/src/core/lib/debug/stats.h +9 -19
- data/src/core/lib/debug/stats_data.cc +85 -116
- data/src/core/lib/debug/stats_data.h +236 -312
- data/src/core/lib/debug/trace.cc +1 -1
- data/src/core/lib/debug/trace.h +0 -12
- data/src/core/lib/{support → gpr++}/abstract.h +8 -3
- data/src/core/lib/{support → gpr++}/atomic.h +5 -5
- data/src/core/lib/{support → gpr++}/atomic_with_atm.h +3 -3
- data/src/core/lib/{support → gpr++}/atomic_with_std.h +3 -3
- data/src/core/lib/gpr++/debug_location.h +52 -0
- data/src/core/lib/gpr++/inlined_vector.h +112 -0
- data/src/core/lib/{support → gpr++}/manual_constructor.h +2 -2
- data/src/core/lib/{support → gpr++}/memory.h +3 -3
- data/src/core/lib/gpr++/orphanable.h +171 -0
- data/src/core/lib/gpr++/ref_counted.h +133 -0
- data/src/core/lib/gpr++/ref_counted_ptr.h +99 -0
- data/src/core/lib/{support → gpr}/alloc.cc +0 -0
- data/src/core/lib/{support → gpr}/arena.cc +1 -1
- data/src/core/lib/{support → gpr}/arena.h +3 -11
- data/src/core/lib/{support → gpr}/atm.cc +0 -0
- data/src/core/lib/{support → gpr}/avl.cc +0 -0
- data/src/core/lib/{support → gpr}/cmdline.cc +1 -1
- data/src/core/lib/{support → gpr}/cpu_iphone.cc +0 -0
- data/src/core/lib/{support → gpr}/cpu_linux.cc +0 -0
- data/src/core/lib/{support → gpr}/cpu_posix.cc +0 -0
- data/src/core/lib/{support → gpr}/cpu_windows.cc +0 -0
- data/src/core/lib/{support → gpr}/env.h +3 -11
- data/src/core/lib/{support → gpr}/env_linux.cc +2 -2
- data/src/core/lib/{support → gpr}/env_posix.cc +4 -4
- data/src/core/lib/{support → gpr}/env_windows.cc +3 -3
- data/src/core/lib/{support → gpr}/fork.cc +3 -3
- data/src/core/lib/{support → gpr}/fork.h +3 -3
- data/src/core/lib/{support → gpr}/host_port.cc +1 -1
- data/src/core/lib/{support → gpr}/log.cc +3 -3
- data/src/core/lib/{support → gpr}/log_android.cc +3 -3
- data/src/core/lib/{support → gpr}/log_linux.cc +1 -1
- data/src/core/lib/{support → gpr}/log_posix.cc +5 -5
- data/src/core/lib/{support → gpr}/log_windows.cc +3 -3
- data/src/core/lib/{support → gpr}/mpscq.cc +1 -1
- data/src/core/lib/{support → gpr}/mpscq.h +3 -10
- data/src/core/lib/{support → gpr}/murmur_hash.cc +1 -1
- data/src/core/lib/{support → gpr}/murmur_hash.h +3 -11
- data/src/core/lib/{support → gpr}/spinlock.h +3 -3
- data/src/core/lib/{support → gpr}/string.cc +1 -1
- data/src/core/lib/{support → gpr}/string.h +3 -10
- data/src/core/lib/{support → gpr}/string_posix.cc +0 -0
- data/src/core/lib/{support → gpr}/string_util_windows.cc +2 -2
- data/src/core/lib/{support → gpr}/string_windows.cc +1 -1
- data/src/core/lib/{support → gpr}/string_windows.h +3 -11
- data/src/core/lib/{support → gpr}/subprocess_posix.cc +0 -0
- data/src/core/lib/{support → gpr}/subprocess_windows.cc +2 -2
- data/src/core/lib/{support → gpr}/sync.cc +0 -0
- data/src/core/lib/{support → gpr}/sync_posix.cc +10 -1
- data/src/core/lib/{support → gpr}/sync_windows.cc +0 -0
- data/src/core/lib/{support → gpr}/thd.cc +0 -0
- data/src/core/lib/{support → gpr}/thd_internal.h +3 -3
- data/src/core/lib/{support → gpr}/thd_posix.cc +18 -2
- data/src/core/lib/{support → gpr}/thd_windows.cc +2 -1
- data/src/core/lib/{support → gpr}/time.cc +0 -0
- data/src/core/lib/{support → gpr}/time_posix.cc +2 -4
- data/src/core/lib/{support → gpr}/time_precise.cc +1 -1
- data/src/core/lib/{support → gpr}/time_precise.h +3 -11
- data/src/core/lib/{support → gpr}/time_windows.cc +1 -3
- data/src/core/lib/{support → gpr}/tls_pthread.cc +0 -0
- data/src/core/lib/{support → gpr}/tmpfile.h +3 -11
- data/src/core/lib/{support → gpr}/tmpfile_msys.cc +2 -2
- data/src/core/lib/{support → gpr}/tmpfile_posix.cc +2 -2
- data/src/core/lib/{support → gpr}/tmpfile_windows.cc +2 -2
- data/src/core/lib/{support → gpr}/wrap_memcpy.cc +0 -0
- data/src/core/lib/http/format_request.cc +1 -1
- data/src/core/lib/http/format_request.h +0 -8
- data/src/core/lib/http/httpcli.cc +55 -74
- data/src/core/lib/http/httpcli.h +13 -22
- data/src/core/lib/http/httpcli_security_connector.cc +27 -33
- data/src/core/lib/http/parser.h +0 -8
- data/src/core/lib/iomgr/block_annotate.h +10 -17
- data/src/core/lib/iomgr/call_combiner.cc +14 -17
- data/src/core/lib/iomgr/call_combiner.h +16 -34
- data/src/core/lib/iomgr/closure.h +24 -37
- data/src/core/lib/iomgr/combiner.cc +62 -66
- data/src/core/lib/iomgr/combiner.h +6 -16
- data/src/core/lib/iomgr/endpoint.cc +15 -21
- data/src/core/lib/iomgr/endpoint.h +16 -33
- data/src/core/lib/iomgr/endpoint_pair.h +0 -8
- data/src/core/lib/iomgr/endpoint_pair_posix.cc +4 -5
- data/src/core/lib/iomgr/endpoint_pair_windows.cc +4 -6
- data/src/core/lib/iomgr/error.cc +2 -6
- data/src/core/lib/iomgr/error.h +4 -9
- data/src/core/lib/iomgr/error_internal.h +0 -8
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +110 -117
- data/src/core/lib/iomgr/ev_epoll1_linux.h +0 -8
- data/src/core/lib/iomgr/ev_epollex_linux.cc +111 -141
- data/src/core/lib/iomgr/ev_epollex_linux.h +0 -8
- data/src/core/lib/iomgr/ev_epollsig_linux.cc +83 -109
- data/src/core/lib/iomgr/ev_epollsig_linux.h +2 -10
- data/src/core/lib/iomgr/ev_poll_posix.cc +103 -125
- data/src/core/lib/iomgr/ev_poll_posix.h +0 -8
- data/src/core/lib/iomgr/ev_posix.cc +35 -50
- data/src/core/lib/iomgr/ev_posix.h +27 -53
- data/src/core/lib/iomgr/exec_ctx.cc +46 -78
- data/src/core/lib/iomgr/exec_ctx.h +127 -60
- data/src/core/lib/iomgr/executor.cc +34 -38
- data/src/core/lib/iomgr/executor.h +3 -11
- data/src/core/lib/iomgr/fork_posix.cc +13 -12
- data/src/core/lib/iomgr/gethostname.h +0 -8
- data/src/core/lib/iomgr/gethostname_sysconf.cc +1 -1
- data/src/core/lib/iomgr/iocp_windows.cc +14 -16
- data/src/core/lib/iomgr/iocp_windows.h +1 -10
- data/src/core/lib/iomgr/iomgr.cc +60 -59
- data/src/core/lib/iomgr/iomgr.h +3 -12
- data/src/core/lib/iomgr/iomgr_internal.h +0 -8
- data/src/core/lib/iomgr/iomgr_uv.cc +2 -3
- data/src/core/lib/iomgr/iomgr_uv.h +0 -8
- data/src/core/lib/iomgr/is_epollexclusive_available.cc +1 -1
- data/src/core/lib/iomgr/load_file.cc +1 -1
- data/src/core/lib/iomgr/load_file.h +0 -8
- data/src/core/lib/iomgr/lockfree_event.cc +7 -8
- data/src/core/lib/iomgr/lockfree_event.h +3 -3
- data/src/core/lib/iomgr/polling_entity.cc +6 -10
- data/src/core/lib/iomgr/polling_entity.h +2 -11
- data/src/core/lib/iomgr/pollset.h +4 -13
- data/src/core/lib/iomgr/pollset_set.h +5 -18
- data/src/core/lib/iomgr/pollset_set_uv.cc +5 -10
- data/src/core/lib/iomgr/pollset_set_windows.cc +5 -10
- data/src/core/lib/iomgr/pollset_uv.cc +8 -9
- data/src/core/lib/iomgr/pollset_uv.h +0 -8
- data/src/core/lib/iomgr/pollset_windows.cc +14 -15
- data/src/core/lib/iomgr/pollset_windows.h +0 -8
- data/src/core/lib/iomgr/port.h +6 -1
- data/src/core/lib/iomgr/resolve_address.h +1 -10
- data/src/core/lib/iomgr/resolve_address_posix.cc +10 -12
- data/src/core/lib/iomgr/resolve_address_uv.cc +7 -8
- data/src/core/lib/iomgr/resolve_address_windows.cc +8 -9
- data/src/core/lib/iomgr/resource_quota.cc +77 -107
- data/src/core/lib/iomgr/resource_quota.h +8 -25
- data/src/core/lib/iomgr/sockaddr_utils.cc +1 -1
- data/src/core/lib/iomgr/sockaddr_utils.h +0 -8
- data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
- data/src/core/lib/iomgr/socket_factory_posix.h +0 -8
- data/src/core/lib/iomgr/socket_mutator.cc +1 -1
- data/src/core/lib/iomgr/socket_mutator.h +1 -9
- data/src/core/lib/iomgr/socket_utils.h +0 -8
- data/src/core/lib/iomgr/socket_utils_common_posix.cc +1 -1
- data/src/core/lib/iomgr/socket_utils_posix.h +0 -8
- data/src/core/lib/iomgr/socket_windows.cc +8 -11
- data/src/core/lib/iomgr/socket_windows.h +3 -14
- data/src/core/lib/iomgr/tcp_client.h +1 -10
- data/src/core/lib/iomgr/tcp_client_posix.cc +94 -78
- data/src/core/lib/iomgr/tcp_client_posix.h +36 -8
- data/src/core/lib/iomgr/tcp_client_uv.cc +16 -23
- data/src/core/lib/iomgr/tcp_client_windows.cc +22 -25
- data/src/core/lib/iomgr/tcp_posix.cc +131 -153
- data/src/core/lib/iomgr/tcp_posix.h +3 -12
- data/src/core/lib/iomgr/tcp_server.h +6 -17
- data/src/core/lib/iomgr/tcp_server_posix.cc +31 -35
- data/src/core/lib/iomgr/tcp_server_utils_posix.h +0 -8
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -1
- data/src/core/lib/iomgr/tcp_server_uv.cc +23 -34
- data/src/core/lib/iomgr/tcp_server_windows.cc +24 -34
- data/src/core/lib/iomgr/tcp_uv.cc +42 -56
- data/src/core/lib/iomgr/tcp_uv.h +0 -8
- data/src/core/lib/iomgr/tcp_windows.cc +43 -50
- data/src/core/lib/iomgr/tcp_windows.h +1 -9
- data/src/core/lib/iomgr/time_averaged_stats.h +0 -8
- data/src/core/lib/iomgr/timer.h +6 -15
- data/src/core/lib/iomgr/timer_generic.cc +22 -27
- data/src/core/lib/iomgr/timer_heap.h +0 -8
- data/src/core/lib/iomgr/timer_manager.cc +17 -19
- data/src/core/lib/iomgr/timer_manager.h +0 -8
- data/src/core/lib/iomgr/timer_uv.cc +12 -14
- data/src/core/lib/iomgr/udp_server.cc +148 -54
- data/src/core/lib/iomgr/udp_server.h +16 -21
- data/src/core/lib/iomgr/unix_sockets_posix.h +0 -8
- data/src/core/lib/iomgr/wakeup_fd_cv.cc +4 -4
- data/src/core/lib/iomgr/wakeup_fd_cv.h +12 -20
- data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +1 -1
- data/src/core/lib/iomgr/wakeup_fd_pipe.h +0 -8
- data/src/core/lib/iomgr/wakeup_fd_posix.h +0 -8
- data/src/core/lib/json/json.h +0 -8
- data/src/core/lib/json/json_reader.h +0 -8
- data/src/core/lib/json/json_writer.h +0 -8
- data/src/core/lib/profiling/basic_timers.cc +3 -2
- data/src/core/lib/profiling/timers.h +0 -8
- data/src/core/lib/security/context/security_context.cc +9 -10
- data/src/core/lib/security/context/security_context.h +0 -8
- data/src/core/lib/security/credentials/composite/composite_credentials.cc +23 -28
- data/src/core/lib/security/credentials/composite/composite_credentials.h +0 -8
- data/src/core/lib/security/credentials/credentials.cc +33 -42
- data/src/core/lib/security/credentials/credentials.h +24 -43
- data/src/core/lib/security/credentials/credentials_metadata.cc +2 -2
- data/src/core/lib/security/credentials/fake/fake_credentials.cc +16 -22
- data/src/core/lib/security/credentials/fake/fake_credentials.h +0 -8
- data/src/core/lib/security/credentials/google_default/credentials_generic.cc +3 -3
- data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +28 -34
- data/src/core/lib/security/credentials/google_default/google_default_credentials.h +0 -8
- data/src/core/lib/security/credentials/iam/iam_credentials.cc +9 -13
- data/src/core/lib/security/credentials/jwt/json_token.cc +1 -1
- data/src/core/lib/security/credentials/jwt/json_token.h +0 -8
- data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +14 -20
- data/src/core/lib/security/credentials/jwt/jwt_credentials.h +1 -10
- data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +56 -72
- data/src/core/lib/security/credentials/jwt/jwt_verifier.h +5 -17
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +47 -55
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +3 -12
- data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +23 -28
- data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +8 -13
- data/src/core/lib/security/credentials/ssl/ssl_credentials.h +0 -8
- data/src/core/lib/security/transport/auth_filters.h +0 -8
- data/src/core/lib/security/transport/client_auth_filter.cc +45 -54
- data/src/core/lib/security/transport/lb_targets_info.cc +2 -2
- data/src/core/lib/security/transport/lb_targets_info.h +0 -8
- data/src/core/lib/security/transport/secure_endpoint.cc +54 -68
- data/src/core/lib/security/transport/secure_endpoint.h +0 -8
- data/src/core/lib/security/transport/security_connector.cc +62 -86
- data/src/core/lib/security/transport/security_connector.h +22 -39
- data/src/core/lib/security/transport/security_handshaker.cc +83 -106
- data/src/core/lib/security/transport/security_handshaker.h +1 -10
- data/src/core/lib/security/transport/server_auth_filter.cc +31 -38
- data/src/core/lib/security/transport/tsi_error.h +0 -8
- data/src/core/lib/security/util/json_util.h +0 -8
- data/src/core/lib/slice/b64.cc +5 -6
- data/src/core/lib/slice/b64.h +3 -12
- data/src/core/lib/slice/percent_encoding.h +0 -8
- data/src/core/lib/slice/slice.cc +8 -9
- data/src/core/lib/slice/slice_buffer.cc +11 -16
- data/src/core/lib/slice/slice_hash_table.cc +5 -7
- data/src/core/lib/slice/slice_hash_table.h +2 -12
- data/src/core/lib/slice/slice_intern.cc +4 -5
- data/src/core/lib/slice/slice_internal.h +4 -15
- data/src/core/lib/slice/slice_string_helpers.cc +1 -1
- data/src/core/lib/slice/slice_string_helpers.h +1 -9
- data/src/core/lib/surface/alarm.cc +11 -14
- data/src/core/lib/surface/alarm_internal.h +0 -8
- data/src/core/lib/surface/byte_buffer.cc +2 -3
- data/src/core/lib/surface/byte_buffer_reader.cc +7 -9
- data/src/core/lib/surface/call.cc +198 -241
- data/src/core/lib/surface/call.h +9 -23
- data/src/core/lib/surface/call_details.cc +3 -4
- data/src/core/lib/surface/call_log_batch.cc +1 -1
- data/src/core/lib/surface/call_test_only.h +0 -8
- data/src/core/lib/surface/channel.cc +53 -64
- data/src/core/lib/surface/channel.h +12 -23
- data/src/core/lib/surface/channel_init.cc +2 -3
- data/src/core/lib/surface/channel_init.h +2 -12
- data/src/core/lib/surface/channel_ping.cc +7 -9
- data/src/core/lib/surface/channel_stack_type.h +0 -8
- data/src/core/lib/surface/completion_queue.cc +158 -176
- data/src/core/lib/surface/completion_queue.h +9 -20
- data/src/core/lib/surface/completion_queue_factory.h +0 -8
- data/src/core/lib/surface/event_string.cc +1 -1
- data/src/core/lib/surface/event_string.h +0 -8
- data/src/core/lib/surface/init.cc +27 -25
- data/src/core/lib/surface/init.h +0 -8
- data/src/core/lib/surface/init_secure.cc +2 -2
- data/src/core/lib/surface/lame_client.cc +30 -33
- data/src/core/lib/surface/lame_client.h +0 -8
- data/src/core/lib/surface/server.cc +151 -203
- data/src/core/lib/surface/server.h +7 -16
- data/src/core/lib/surface/validate_metadata.h +0 -8
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.h +1 -1
- data/src/core/lib/transport/byte_stream.cc +24 -38
- data/src/core/lib/transport/byte_stream.h +10 -25
- data/src/core/lib/transport/connectivity_state.cc +9 -13
- data/src/core/lib/transport/connectivity_state.h +4 -14
- data/src/core/lib/transport/error_utils.cc +6 -6
- data/src/core/lib/transport/error_utils.h +2 -11
- data/src/core/lib/transport/metadata.cc +21 -23
- data/src/core/lib/transport/metadata.h +8 -20
- data/src/core/lib/transport/metadata_batch.cc +34 -45
- data/src/core/lib/transport/metadata_batch.h +18 -32
- data/src/core/lib/transport/service_config.cc +11 -15
- data/src/core/lib/transport/service_config.h +3 -13
- data/src/core/lib/transport/static_metadata.cc +1 -1
- data/src/core/lib/transport/static_metadata.h +1 -7
- data/src/core/lib/transport/status_conversion.cc +2 -3
- data/src/core/lib/transport/status_conversion.h +1 -10
- data/src/core/lib/transport/timeout_encoding.cc +1 -1
- data/src/core/lib/transport/timeout_encoding.h +1 -9
- data/src/core/lib/transport/transport.cc +36 -50
- data/src/core/lib/transport/transport.h +28 -30
- data/src/core/lib/transport/transport_impl.h +12 -23
- data/src/core/lib/transport/transport_op_string.cc +2 -2
- data/src/core/plugin_registry/grpc_plugin_registry.cc +34 -34
- data/src/core/tsi/fake_transport_security.cc +7 -10
- data/src/core/tsi/fake_transport_security.h +0 -8
- data/src/core/tsi/gts_transport_security.cc +2 -2
- data/src/core/tsi/gts_transport_security.h +0 -8
- data/src/core/tsi/ssl_transport_security.cc +3 -0
- data/src/core/tsi/ssl_transport_security.h +0 -8
- data/src/core/tsi/ssl_types.h +0 -8
- data/src/core/tsi/transport_security.h +1 -9
- data/src/core/tsi/transport_security_adapter.h +0 -8
- data/src/core/tsi/transport_security_grpc.cc +11 -18
- data/src/core/tsi/transport_security_grpc.h +9 -21
- data/src/core/tsi/transport_security_interface.h +0 -8
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +0 -30
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +2 -48
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/spec/channel_connection_spec.rb +2 -1
- data/src/ruby/spec/client_auth_spec.rb +1 -1
- data/src/ruby/spec/client_server_spec.rb +2 -2
- data/src/ruby/spec/generic/active_call_spec.rb +1 -1
- data/src/ruby/spec/generic/client_stub_spec.rb +4 -4
- data/src/ruby/spec/generic/interceptor_registry_spec.rb +1 -1
- data/src/ruby/spec/generic/rpc_server_spec.rb +12 -12
- data/src/ruby/spec/google_rpc_status_utils_spec.rb +3 -2
- data/src/ruby/spec/pb/health/checker_spec.rb +1 -1
- data/src/ruby/spec/server_spec.rb +9 -9
- data/src/ruby/spec/support/helpers.rb +35 -1
- metadata +68 -66
- data/include/grpc/impl/codegen/exec_ctx_fwd.h +0 -26
- data/include/grpc/support/histogram.h +0 -64
- data/src/core/lib/support/histogram.cc +0 -227
@@ -31,7 +31,7 @@ module GRPC
|
|
31
31
|
#
|
32
32
|
def build_rpc_server(server_opts: {},
|
33
33
|
client_opts: {})
|
34
|
-
@server =
|
34
|
+
@server = new_rpc_server_for_testing({ poll_period: 1 }.merge(server_opts))
|
35
35
|
@port = @server.add_http2_port('0.0.0.0:0', :this_port_is_insecure)
|
36
36
|
@host = "0.0.0.0:#{@port}"
|
37
37
|
@client_opts = client_opts
|
@@ -68,6 +68,40 @@ module GRPC
|
|
68
68
|
opts ||= @client_opts
|
69
69
|
klass.new(host, :this_channel_is_insecure, **opts)
|
70
70
|
end
|
71
|
+
|
72
|
+
##
|
73
|
+
# Build an RPCServer for use in tests. Adds args
|
74
|
+
# that are useful for all tests.
|
75
|
+
#
|
76
|
+
# @param [Hash] server_opts
|
77
|
+
#
|
78
|
+
def new_rpc_server_for_testing(server_opts = {})
|
79
|
+
server_opts[:server_args] ||= {}
|
80
|
+
update_server_args_hash(server_opts[:server_args])
|
81
|
+
RpcServer.new(**server_opts)
|
82
|
+
end
|
83
|
+
|
84
|
+
##
|
85
|
+
# Build an GRPC::Core::Server for use in tests. Adds args
|
86
|
+
# that are useful for all tests.
|
87
|
+
#
|
88
|
+
# @param [Hash] server_args
|
89
|
+
#
|
90
|
+
def new_core_server_for_testing(server_args)
|
91
|
+
server_args.nil? && server_args = {}
|
92
|
+
update_server_args_hash(server_args)
|
93
|
+
GRPC::Core::Server.new(server_args)
|
94
|
+
end
|
95
|
+
|
96
|
+
def update_server_args_hash(server_args)
|
97
|
+
so_reuseport_arg = 'grpc.so_reuseport'
|
98
|
+
unless server_args[so_reuseport_arg].nil?
|
99
|
+
fail 'Unexpected. grpc.so_reuseport already set.'
|
100
|
+
end
|
101
|
+
# Run tests without so_reuseport to eliminate the chance of
|
102
|
+
# cross-talk.
|
103
|
+
server_args[so_reuseport_arg] = 0
|
104
|
+
end
|
71
105
|
end
|
72
106
|
end
|
73
107
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: grpc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.9.0.pre1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- gRPC Authors
|
8
8
|
autorequire:
|
9
9
|
bindir: src/ruby/bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-01-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: google-protobuf
|
@@ -226,7 +226,6 @@ files:
|
|
226
226
|
- include/grpc/impl/codegen/byte_buffer_reader.h
|
227
227
|
- include/grpc/impl/codegen/compression_types.h
|
228
228
|
- include/grpc/impl/codegen/connectivity_state.h
|
229
|
-
- include/grpc/impl/codegen/exec_ctx_fwd.h
|
230
229
|
- include/grpc/impl/codegen/fork.h
|
231
230
|
- include/grpc/impl/codegen/gpr_slice.h
|
232
231
|
- include/grpc/impl/codegen/gpr_types.h
|
@@ -253,7 +252,6 @@ files:
|
|
253
252
|
- include/grpc/support/avl.h
|
254
253
|
- include/grpc/support/cmdline.h
|
255
254
|
- include/grpc/support/cpu.h
|
256
|
-
- include/grpc/support/histogram.h
|
257
255
|
- include/grpc/support/host_port.h
|
258
256
|
- include/grpc/support/log.h
|
259
257
|
- include/grpc/support/log_windows.h
|
@@ -452,6 +450,70 @@ files:
|
|
452
450
|
- src/core/lib/debug/stats_data.h
|
453
451
|
- src/core/lib/debug/trace.cc
|
454
452
|
- src/core/lib/debug/trace.h
|
453
|
+
- src/core/lib/gpr++/abstract.h
|
454
|
+
- src/core/lib/gpr++/atomic.h
|
455
|
+
- src/core/lib/gpr++/atomic_with_atm.h
|
456
|
+
- src/core/lib/gpr++/atomic_with_std.h
|
457
|
+
- src/core/lib/gpr++/debug_location.h
|
458
|
+
- src/core/lib/gpr++/inlined_vector.h
|
459
|
+
- src/core/lib/gpr++/manual_constructor.h
|
460
|
+
- src/core/lib/gpr++/memory.h
|
461
|
+
- src/core/lib/gpr++/orphanable.h
|
462
|
+
- src/core/lib/gpr++/ref_counted.h
|
463
|
+
- src/core/lib/gpr++/ref_counted_ptr.h
|
464
|
+
- src/core/lib/gpr/alloc.cc
|
465
|
+
- src/core/lib/gpr/arena.cc
|
466
|
+
- src/core/lib/gpr/arena.h
|
467
|
+
- src/core/lib/gpr/atm.cc
|
468
|
+
- src/core/lib/gpr/avl.cc
|
469
|
+
- src/core/lib/gpr/cmdline.cc
|
470
|
+
- src/core/lib/gpr/cpu_iphone.cc
|
471
|
+
- src/core/lib/gpr/cpu_linux.cc
|
472
|
+
- src/core/lib/gpr/cpu_posix.cc
|
473
|
+
- src/core/lib/gpr/cpu_windows.cc
|
474
|
+
- src/core/lib/gpr/env.h
|
475
|
+
- src/core/lib/gpr/env_linux.cc
|
476
|
+
- src/core/lib/gpr/env_posix.cc
|
477
|
+
- src/core/lib/gpr/env_windows.cc
|
478
|
+
- src/core/lib/gpr/fork.cc
|
479
|
+
- src/core/lib/gpr/fork.h
|
480
|
+
- src/core/lib/gpr/host_port.cc
|
481
|
+
- src/core/lib/gpr/log.cc
|
482
|
+
- src/core/lib/gpr/log_android.cc
|
483
|
+
- src/core/lib/gpr/log_linux.cc
|
484
|
+
- src/core/lib/gpr/log_posix.cc
|
485
|
+
- src/core/lib/gpr/log_windows.cc
|
486
|
+
- src/core/lib/gpr/mpscq.cc
|
487
|
+
- src/core/lib/gpr/mpscq.h
|
488
|
+
- src/core/lib/gpr/murmur_hash.cc
|
489
|
+
- src/core/lib/gpr/murmur_hash.h
|
490
|
+
- src/core/lib/gpr/spinlock.h
|
491
|
+
- src/core/lib/gpr/string.cc
|
492
|
+
- src/core/lib/gpr/string.h
|
493
|
+
- src/core/lib/gpr/string_posix.cc
|
494
|
+
- src/core/lib/gpr/string_util_windows.cc
|
495
|
+
- src/core/lib/gpr/string_windows.cc
|
496
|
+
- src/core/lib/gpr/string_windows.h
|
497
|
+
- src/core/lib/gpr/subprocess_posix.cc
|
498
|
+
- src/core/lib/gpr/subprocess_windows.cc
|
499
|
+
- src/core/lib/gpr/sync.cc
|
500
|
+
- src/core/lib/gpr/sync_posix.cc
|
501
|
+
- src/core/lib/gpr/sync_windows.cc
|
502
|
+
- src/core/lib/gpr/thd.cc
|
503
|
+
- src/core/lib/gpr/thd_internal.h
|
504
|
+
- src/core/lib/gpr/thd_posix.cc
|
505
|
+
- src/core/lib/gpr/thd_windows.cc
|
506
|
+
- src/core/lib/gpr/time.cc
|
507
|
+
- src/core/lib/gpr/time_posix.cc
|
508
|
+
- src/core/lib/gpr/time_precise.cc
|
509
|
+
- src/core/lib/gpr/time_precise.h
|
510
|
+
- src/core/lib/gpr/time_windows.cc
|
511
|
+
- src/core/lib/gpr/tls_pthread.cc
|
512
|
+
- src/core/lib/gpr/tmpfile.h
|
513
|
+
- src/core/lib/gpr/tmpfile_msys.cc
|
514
|
+
- src/core/lib/gpr/tmpfile_posix.cc
|
515
|
+
- src/core/lib/gpr/tmpfile_windows.cc
|
516
|
+
- src/core/lib/gpr/wrap_memcpy.cc
|
455
517
|
- src/core/lib/http/format_request.cc
|
456
518
|
- src/core/lib/http/format_request.h
|
457
519
|
- src/core/lib/http/httpcli.cc
|
@@ -658,66 +720,6 @@ files:
|
|
658
720
|
- src/core/lib/slice/slice_internal.h
|
659
721
|
- src/core/lib/slice/slice_string_helpers.cc
|
660
722
|
- src/core/lib/slice/slice_string_helpers.h
|
661
|
-
- src/core/lib/support/abstract.h
|
662
|
-
- src/core/lib/support/alloc.cc
|
663
|
-
- src/core/lib/support/arena.cc
|
664
|
-
- src/core/lib/support/arena.h
|
665
|
-
- src/core/lib/support/atm.cc
|
666
|
-
- src/core/lib/support/atomic.h
|
667
|
-
- src/core/lib/support/atomic_with_atm.h
|
668
|
-
- src/core/lib/support/atomic_with_std.h
|
669
|
-
- src/core/lib/support/avl.cc
|
670
|
-
- src/core/lib/support/cmdline.cc
|
671
|
-
- src/core/lib/support/cpu_iphone.cc
|
672
|
-
- src/core/lib/support/cpu_linux.cc
|
673
|
-
- src/core/lib/support/cpu_posix.cc
|
674
|
-
- src/core/lib/support/cpu_windows.cc
|
675
|
-
- src/core/lib/support/env.h
|
676
|
-
- src/core/lib/support/env_linux.cc
|
677
|
-
- src/core/lib/support/env_posix.cc
|
678
|
-
- src/core/lib/support/env_windows.cc
|
679
|
-
- src/core/lib/support/fork.cc
|
680
|
-
- src/core/lib/support/fork.h
|
681
|
-
- src/core/lib/support/histogram.cc
|
682
|
-
- src/core/lib/support/host_port.cc
|
683
|
-
- src/core/lib/support/log.cc
|
684
|
-
- src/core/lib/support/log_android.cc
|
685
|
-
- src/core/lib/support/log_linux.cc
|
686
|
-
- src/core/lib/support/log_posix.cc
|
687
|
-
- src/core/lib/support/log_windows.cc
|
688
|
-
- src/core/lib/support/manual_constructor.h
|
689
|
-
- src/core/lib/support/memory.h
|
690
|
-
- src/core/lib/support/mpscq.cc
|
691
|
-
- src/core/lib/support/mpscq.h
|
692
|
-
- src/core/lib/support/murmur_hash.cc
|
693
|
-
- src/core/lib/support/murmur_hash.h
|
694
|
-
- src/core/lib/support/spinlock.h
|
695
|
-
- src/core/lib/support/string.cc
|
696
|
-
- src/core/lib/support/string.h
|
697
|
-
- src/core/lib/support/string_posix.cc
|
698
|
-
- src/core/lib/support/string_util_windows.cc
|
699
|
-
- src/core/lib/support/string_windows.cc
|
700
|
-
- src/core/lib/support/string_windows.h
|
701
|
-
- src/core/lib/support/subprocess_posix.cc
|
702
|
-
- src/core/lib/support/subprocess_windows.cc
|
703
|
-
- src/core/lib/support/sync.cc
|
704
|
-
- src/core/lib/support/sync_posix.cc
|
705
|
-
- src/core/lib/support/sync_windows.cc
|
706
|
-
- src/core/lib/support/thd.cc
|
707
|
-
- src/core/lib/support/thd_internal.h
|
708
|
-
- src/core/lib/support/thd_posix.cc
|
709
|
-
- src/core/lib/support/thd_windows.cc
|
710
|
-
- src/core/lib/support/time.cc
|
711
|
-
- src/core/lib/support/time_posix.cc
|
712
|
-
- src/core/lib/support/time_precise.cc
|
713
|
-
- src/core/lib/support/time_precise.h
|
714
|
-
- src/core/lib/support/time_windows.cc
|
715
|
-
- src/core/lib/support/tls_pthread.cc
|
716
|
-
- src/core/lib/support/tmpfile.h
|
717
|
-
- src/core/lib/support/tmpfile_msys.cc
|
718
|
-
- src/core/lib/support/tmpfile_posix.cc
|
719
|
-
- src/core/lib/support/tmpfile_windows.cc
|
720
|
-
- src/core/lib/support/wrap_memcpy.cc
|
721
723
|
- src/core/lib/surface/alarm.cc
|
722
724
|
- src/core/lib/surface/alarm_internal.h
|
723
725
|
- src/core/lib/surface/api_trace.cc
|
@@ -1428,9 +1430,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1428
1430
|
version: 2.0.0
|
1429
1431
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1430
1432
|
requirements:
|
1431
|
-
- - "
|
1433
|
+
- - ">"
|
1432
1434
|
- !ruby/object:Gem::Version
|
1433
|
-
version:
|
1435
|
+
version: 1.3.1
|
1434
1436
|
requirements: []
|
1435
1437
|
rubyforge_project:
|
1436
1438
|
rubygems_version: 2.7.4
|
@@ -1,26 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
*
|
3
|
-
* Copyright 2016 gRPC authors.
|
4
|
-
*
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
-
* you may not use this file except in compliance with the License.
|
7
|
-
* You may obtain a copy of the License at
|
8
|
-
*
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
-
*
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
-
* See the License for the specific language governing permissions and
|
15
|
-
* limitations under the License.
|
16
|
-
*
|
17
|
-
*/
|
18
|
-
|
19
|
-
#ifndef GRPC_IMPL_CODEGEN_EXEC_CTX_FWD_H
|
20
|
-
#define GRPC_IMPL_CODEGEN_EXEC_CTX_FWD_H
|
21
|
-
|
22
|
-
/* forward declaration for exec_ctx.h */
|
23
|
-
struct grpc_exec_ctx;
|
24
|
-
typedef struct grpc_exec_ctx grpc_exec_ctx;
|
25
|
-
|
26
|
-
#endif /* GRPC_IMPL_CODEGEN_EXEC_CTX_FWD_H */
|
@@ -1,64 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
*
|
3
|
-
* Copyright 2015 gRPC authors.
|
4
|
-
*
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
-
* you may not use this file except in compliance with the License.
|
7
|
-
* You may obtain a copy of the License at
|
8
|
-
*
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
-
*
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
-
* See the License for the specific language governing permissions and
|
15
|
-
* limitations under the License.
|
16
|
-
*
|
17
|
-
*/
|
18
|
-
|
19
|
-
#ifndef GRPC_SUPPORT_HISTOGRAM_H
|
20
|
-
#define GRPC_SUPPORT_HISTOGRAM_H
|
21
|
-
|
22
|
-
#include <grpc/support/port_platform.h>
|
23
|
-
#include <stddef.h>
|
24
|
-
|
25
|
-
#ifdef __cplusplus
|
26
|
-
extern "C" {
|
27
|
-
#endif
|
28
|
-
|
29
|
-
typedef struct gpr_histogram gpr_histogram;
|
30
|
-
|
31
|
-
GPRAPI gpr_histogram* gpr_histogram_create(double resolution,
|
32
|
-
double max_bucket_start);
|
33
|
-
GPRAPI void gpr_histogram_destroy(gpr_histogram* h);
|
34
|
-
GPRAPI void gpr_histogram_add(gpr_histogram* h, double x);
|
35
|
-
|
36
|
-
/** The following merges the second histogram into the first. It only works
|
37
|
-
if they have the same buckets and resolution. Returns 0 on failure, 1
|
38
|
-
on success */
|
39
|
-
GPRAPI int gpr_histogram_merge(gpr_histogram* dst, const gpr_histogram* src);
|
40
|
-
|
41
|
-
GPRAPI double gpr_histogram_percentile(gpr_histogram* histogram,
|
42
|
-
double percentile);
|
43
|
-
GPRAPI double gpr_histogram_mean(gpr_histogram* histogram);
|
44
|
-
GPRAPI double gpr_histogram_stddev(gpr_histogram* histogram);
|
45
|
-
GPRAPI double gpr_histogram_variance(gpr_histogram* histogram);
|
46
|
-
GPRAPI double gpr_histogram_maximum(gpr_histogram* histogram);
|
47
|
-
GPRAPI double gpr_histogram_minimum(gpr_histogram* histogram);
|
48
|
-
GPRAPI double gpr_histogram_count(gpr_histogram* histogram);
|
49
|
-
GPRAPI double gpr_histogram_sum(gpr_histogram* histogram);
|
50
|
-
GPRAPI double gpr_histogram_sum_of_squares(gpr_histogram* histogram);
|
51
|
-
|
52
|
-
GPRAPI const uint32_t* gpr_histogram_get_contents(gpr_histogram* histogram,
|
53
|
-
size_t* count);
|
54
|
-
GPRAPI void gpr_histogram_merge_contents(gpr_histogram* histogram,
|
55
|
-
const uint32_t* data,
|
56
|
-
size_t data_count, double min_seen,
|
57
|
-
double max_seen, double sum,
|
58
|
-
double sum_of_squares, double count);
|
59
|
-
|
60
|
-
#ifdef __cplusplus
|
61
|
-
}
|
62
|
-
#endif
|
63
|
-
|
64
|
-
#endif /* GRPC_SUPPORT_HISTOGRAM_H */
|
@@ -1,227 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
*
|
3
|
-
* Copyright 2015 gRPC authors.
|
4
|
-
*
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
-
* you may not use this file except in compliance with the License.
|
7
|
-
* You may obtain a copy of the License at
|
8
|
-
*
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
-
*
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
-
* See the License for the specific language governing permissions and
|
15
|
-
* limitations under the License.
|
16
|
-
*
|
17
|
-
*/
|
18
|
-
|
19
|
-
#include <grpc/support/histogram.h>
|
20
|
-
|
21
|
-
#include <math.h>
|
22
|
-
#include <stddef.h>
|
23
|
-
#include <string.h>
|
24
|
-
|
25
|
-
#include <grpc/support/alloc.h>
|
26
|
-
#include <grpc/support/log.h>
|
27
|
-
#include <grpc/support/port_platform.h>
|
28
|
-
#include <grpc/support/useful.h>
|
29
|
-
|
30
|
-
/* Histograms are stored with exponentially increasing bucket sizes.
|
31
|
-
The first bucket is [0, m) where m = 1 + resolution
|
32
|
-
Bucket n (n>=1) contains [m**n, m**(n+1))
|
33
|
-
There are sufficient buckets to reach max_bucket_start */
|
34
|
-
|
35
|
-
struct gpr_histogram {
|
36
|
-
/* Sum of all values seen so far */
|
37
|
-
double sum;
|
38
|
-
/* Sum of squares of all values seen so far */
|
39
|
-
double sum_of_squares;
|
40
|
-
/* number of values seen so far */
|
41
|
-
double count;
|
42
|
-
/* m in the description */
|
43
|
-
double multiplier;
|
44
|
-
double one_on_log_multiplier;
|
45
|
-
/* minimum value seen */
|
46
|
-
double min_seen;
|
47
|
-
/* maximum value seen */
|
48
|
-
double max_seen;
|
49
|
-
/* maximum representable value */
|
50
|
-
double max_possible;
|
51
|
-
/* number of buckets */
|
52
|
-
size_t num_buckets;
|
53
|
-
/* the buckets themselves */
|
54
|
-
uint32_t* buckets;
|
55
|
-
};
|
56
|
-
|
57
|
-
/* determine a bucket index given a value - does no bounds checking */
|
58
|
-
static size_t bucket_for_unchecked(gpr_histogram* h, double x) {
|
59
|
-
return (size_t)(log(x) * h->one_on_log_multiplier);
|
60
|
-
}
|
61
|
-
|
62
|
-
/* bounds checked version of the above */
|
63
|
-
static size_t bucket_for(gpr_histogram* h, double x) {
|
64
|
-
size_t bucket = bucket_for_unchecked(h, GPR_CLAMP(x, 1.0, h->max_possible));
|
65
|
-
GPR_ASSERT(bucket < h->num_buckets);
|
66
|
-
return bucket;
|
67
|
-
}
|
68
|
-
|
69
|
-
/* at what value does a bucket start? */
|
70
|
-
static double bucket_start(gpr_histogram* h, double x) {
|
71
|
-
return pow(h->multiplier, x);
|
72
|
-
}
|
73
|
-
|
74
|
-
gpr_histogram* gpr_histogram_create(double resolution,
|
75
|
-
double max_bucket_start) {
|
76
|
-
gpr_histogram* h = (gpr_histogram*)gpr_malloc(sizeof(gpr_histogram));
|
77
|
-
GPR_ASSERT(resolution > 0.0);
|
78
|
-
GPR_ASSERT(max_bucket_start > resolution);
|
79
|
-
h->sum = 0.0;
|
80
|
-
h->sum_of_squares = 0.0;
|
81
|
-
h->multiplier = 1.0 + resolution;
|
82
|
-
h->one_on_log_multiplier = 1.0 / log(1.0 + resolution);
|
83
|
-
h->max_possible = max_bucket_start;
|
84
|
-
h->count = 0.0;
|
85
|
-
h->min_seen = max_bucket_start;
|
86
|
-
h->max_seen = 0.0;
|
87
|
-
h->num_buckets = bucket_for_unchecked(h, max_bucket_start) + 1;
|
88
|
-
GPR_ASSERT(h->num_buckets > 1);
|
89
|
-
GPR_ASSERT(h->num_buckets < 100000000);
|
90
|
-
h->buckets = (uint32_t*)gpr_zalloc(sizeof(uint32_t) * h->num_buckets);
|
91
|
-
return h;
|
92
|
-
}
|
93
|
-
|
94
|
-
void gpr_histogram_destroy(gpr_histogram* h) {
|
95
|
-
gpr_free(h->buckets);
|
96
|
-
gpr_free(h);
|
97
|
-
}
|
98
|
-
|
99
|
-
void gpr_histogram_add(gpr_histogram* h, double x) {
|
100
|
-
h->sum += x;
|
101
|
-
h->sum_of_squares += x * x;
|
102
|
-
h->count++;
|
103
|
-
if (x < h->min_seen) {
|
104
|
-
h->min_seen = x;
|
105
|
-
}
|
106
|
-
if (x > h->max_seen) {
|
107
|
-
h->max_seen = x;
|
108
|
-
}
|
109
|
-
h->buckets[bucket_for(h, x)]++;
|
110
|
-
}
|
111
|
-
|
112
|
-
int gpr_histogram_merge(gpr_histogram* dst, const gpr_histogram* src) {
|
113
|
-
if ((dst->num_buckets != src->num_buckets) ||
|
114
|
-
(dst->multiplier != src->multiplier)) {
|
115
|
-
/* Fail because these histograms don't match */
|
116
|
-
return 0;
|
117
|
-
}
|
118
|
-
gpr_histogram_merge_contents(dst, src->buckets, src->num_buckets,
|
119
|
-
src->min_seen, src->max_seen, src->sum,
|
120
|
-
src->sum_of_squares, src->count);
|
121
|
-
return 1;
|
122
|
-
}
|
123
|
-
|
124
|
-
void gpr_histogram_merge_contents(gpr_histogram* dst, const uint32_t* data,
|
125
|
-
size_t data_count, double min_seen,
|
126
|
-
double max_seen, double sum,
|
127
|
-
double sum_of_squares, double count) {
|
128
|
-
size_t i;
|
129
|
-
GPR_ASSERT(dst->num_buckets == data_count);
|
130
|
-
dst->sum += sum;
|
131
|
-
dst->sum_of_squares += sum_of_squares;
|
132
|
-
dst->count += count;
|
133
|
-
if (min_seen < dst->min_seen) {
|
134
|
-
dst->min_seen = min_seen;
|
135
|
-
}
|
136
|
-
if (max_seen > dst->max_seen) {
|
137
|
-
dst->max_seen = max_seen;
|
138
|
-
}
|
139
|
-
for (i = 0; i < dst->num_buckets; i++) {
|
140
|
-
dst->buckets[i] += data[i];
|
141
|
-
}
|
142
|
-
}
|
143
|
-
|
144
|
-
static double threshold_for_count_below(gpr_histogram* h, double count_below) {
|
145
|
-
double count_so_far;
|
146
|
-
double lower_bound;
|
147
|
-
double upper_bound;
|
148
|
-
size_t lower_idx;
|
149
|
-
size_t upper_idx;
|
150
|
-
|
151
|
-
if (h->count == 0) {
|
152
|
-
return 0.0;
|
153
|
-
}
|
154
|
-
|
155
|
-
if (count_below <= 0) {
|
156
|
-
return h->min_seen;
|
157
|
-
}
|
158
|
-
if (count_below >= h->count) {
|
159
|
-
return h->max_seen;
|
160
|
-
}
|
161
|
-
|
162
|
-
/* find the lowest bucket that gets us above count_below */
|
163
|
-
count_so_far = 0.0;
|
164
|
-
for (lower_idx = 0; lower_idx < h->num_buckets; lower_idx++) {
|
165
|
-
count_so_far += h->buckets[lower_idx];
|
166
|
-
if (count_so_far >= count_below) {
|
167
|
-
break;
|
168
|
-
}
|
169
|
-
}
|
170
|
-
if (count_so_far == count_below) {
|
171
|
-
/* this bucket hits the threshold exactly... we should be midway through
|
172
|
-
any run of zero values following the bucket */
|
173
|
-
for (upper_idx = lower_idx + 1; upper_idx < h->num_buckets; upper_idx++) {
|
174
|
-
if (h->buckets[upper_idx]) {
|
175
|
-
break;
|
176
|
-
}
|
177
|
-
}
|
178
|
-
return (bucket_start(h, (double)lower_idx) +
|
179
|
-
bucket_start(h, (double)upper_idx)) /
|
180
|
-
2.0;
|
181
|
-
} else {
|
182
|
-
/* treat values as uniform throughout the bucket, and find where this value
|
183
|
-
should lie */
|
184
|
-
lower_bound = bucket_start(h, (double)lower_idx);
|
185
|
-
upper_bound = bucket_start(h, (double)(lower_idx + 1));
|
186
|
-
return GPR_CLAMP(upper_bound - (upper_bound - lower_bound) *
|
187
|
-
(count_so_far - count_below) /
|
188
|
-
h->buckets[lower_idx],
|
189
|
-
h->min_seen, h->max_seen);
|
190
|
-
}
|
191
|
-
}
|
192
|
-
|
193
|
-
double gpr_histogram_percentile(gpr_histogram* h, double percentile) {
|
194
|
-
return threshold_for_count_below(h, h->count * percentile / 100.0);
|
195
|
-
}
|
196
|
-
|
197
|
-
double gpr_histogram_mean(gpr_histogram* h) {
|
198
|
-
GPR_ASSERT(h->count != 0);
|
199
|
-
return h->sum / h->count;
|
200
|
-
}
|
201
|
-
|
202
|
-
double gpr_histogram_stddev(gpr_histogram* h) {
|
203
|
-
return sqrt(gpr_histogram_variance(h));
|
204
|
-
}
|
205
|
-
|
206
|
-
double gpr_histogram_variance(gpr_histogram* h) {
|
207
|
-
if (h->count == 0) return 0.0;
|
208
|
-
return (h->sum_of_squares * h->count - h->sum * h->sum) /
|
209
|
-
(h->count * h->count);
|
210
|
-
}
|
211
|
-
|
212
|
-
double gpr_histogram_maximum(gpr_histogram* h) { return h->max_seen; }
|
213
|
-
|
214
|
-
double gpr_histogram_minimum(gpr_histogram* h) { return h->min_seen; }
|
215
|
-
|
216
|
-
double gpr_histogram_count(gpr_histogram* h) { return h->count; }
|
217
|
-
|
218
|
-
double gpr_histogram_sum(gpr_histogram* h) { return h->sum; }
|
219
|
-
|
220
|
-
double gpr_histogram_sum_of_squares(gpr_histogram* h) {
|
221
|
-
return h->sum_of_squares;
|
222
|
-
}
|
223
|
-
|
224
|
-
const uint32_t* gpr_histogram_get_contents(gpr_histogram* h, size_t* size) {
|
225
|
-
*size = h->num_buckets;
|
226
|
-
return h->buckets;
|
227
|
-
}
|