grpc 1.64.3 → 1.65.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (632) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +57 -58
  3. data/include/grpc/event_engine/event_engine.h +13 -6
  4. data/include/grpc/impl/channel_arg_names.h +7 -3
  5. data/include/grpc/module.modulemap +1 -0
  6. data/include/grpc/passive_listener.h +62 -0
  7. data/include/grpc/support/log.h +7 -17
  8. data/include/grpc/support/port_platform.h +3 -0
  9. data/src/core/channelz/channel_trace.cc +1 -1
  10. data/src/core/channelz/channel_trace.h +1 -1
  11. data/src/core/channelz/channelz.cc +3 -3
  12. data/src/core/channelz/channelz.h +7 -7
  13. data/src/core/channelz/channelz_registry.cc +4 -3
  14. data/src/core/client_channel/backup_poller.cc +4 -5
  15. data/src/core/client_channel/client_channel.cc +1324 -0
  16. data/src/core/client_channel/client_channel.h +243 -0
  17. data/src/core/client_channel/client_channel_filter.cc +266 -709
  18. data/src/core/client_channel/client_channel_filter.h +11 -64
  19. data/src/core/client_channel/client_channel_internal.h +16 -5
  20. data/src/core/client_channel/client_channel_plugin.cc +1 -14
  21. data/src/core/client_channel/client_channel_service_config.h +3 -3
  22. data/src/core/client_channel/config_selector.cc +1 -1
  23. data/src/core/client_channel/config_selector.h +1 -1
  24. data/src/core/client_channel/dynamic_filters.cc +3 -3
  25. data/src/core/client_channel/dynamic_filters.h +1 -3
  26. data/src/core/client_channel/load_balanced_call_destination.cc +336 -0
  27. data/src/core/client_channel/load_balanced_call_destination.h +49 -0
  28. data/src/core/client_channel/retry_filter.cc +2 -9
  29. data/src/core/client_channel/retry_filter.h +2 -7
  30. data/src/core/client_channel/retry_filter_legacy_call_data.cc +65 -72
  31. data/src/core/client_channel/retry_filter_legacy_call_data.h +0 -2
  32. data/src/core/client_channel/retry_service_config.cc +4 -5
  33. data/src/core/client_channel/retry_service_config.h +3 -3
  34. data/src/core/client_channel/subchannel.cc +220 -112
  35. data/src/core/client_channel/subchannel.h +31 -18
  36. data/src/core/client_channel/subchannel_pool_interface.cc +0 -2
  37. data/src/core/client_channel/subchannel_pool_interface.h +2 -4
  38. data/src/core/client_channel/subchannel_stream_client.cc +36 -49
  39. data/src/core/client_channel/subchannel_stream_client.h +2 -4
  40. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +7 -10
  41. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +1 -0
  42. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +7 -0
  43. data/src/core/ext/filters/census/grpc_context.cc +2 -4
  44. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +8 -15
  45. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +2 -0
  46. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +3 -7
  47. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +1 -0
  48. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
  49. data/src/core/ext/filters/http/client/http_client_filter.cc +1 -0
  50. data/src/core/ext/filters/http/client/http_client_filter.h +1 -0
  51. data/src/core/ext/filters/http/client_authority_filter.cc +1 -0
  52. data/src/core/ext/filters/http/client_authority_filter.h +1 -0
  53. data/src/core/ext/filters/http/message_compress/compression_filter.cc +10 -15
  54. data/src/core/ext/filters/http/message_compress/compression_filter.h +2 -0
  55. data/src/core/ext/filters/http/server/http_server_filter.cc +2 -2
  56. data/src/core/ext/filters/http/server/http_server_filter.h +1 -0
  57. data/src/core/ext/filters/message_size/message_size_filter.cc +6 -9
  58. data/src/core/ext/filters/message_size/message_size_filter.h +6 -6
  59. data/src/core/ext/filters/rbac/rbac_filter.cc +2 -5
  60. data/src/core/ext/filters/rbac/rbac_filter.h +1 -0
  61. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -2
  62. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +1 -1
  63. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +2 -6
  64. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +1 -0
  65. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
  66. data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -1
  67. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +8 -25
  68. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -5
  69. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +223 -148
  70. data/src/core/ext/transport/chttp2/server/chttp2_server.h +33 -0
  71. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +131 -107
  72. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +8 -8
  73. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +1 -1
  74. data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -4
  75. data/src/core/ext/transport/chttp2/transport/flow_control.h +0 -2
  76. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -6
  77. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +1 -2
  78. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +9 -5
  79. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +5 -4
  80. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +9 -2
  81. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +32 -43
  82. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +1 -3
  83. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +3 -8
  84. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -1
  85. data/src/core/ext/transport/chttp2/transport/http2_settings.h +1 -1
  86. data/src/core/ext/transport/chttp2/transport/internal.h +29 -19
  87. data/src/core/ext/transport/chttp2/transport/parsing.cc +15 -25
  88. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +0 -2
  89. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +0 -2
  90. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +29 -13
  91. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +5 -4
  92. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +3 -5
  93. data/src/core/ext/transport/chttp2/transport/writing.cc +24 -25
  94. data/src/core/ext/transport/inproc/inproc_transport.cc +56 -32
  95. data/src/core/ext/transport/inproc/inproc_transport.h +1 -3
  96. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +13 -15
  97. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +0 -2
  98. data/src/core/handshaker/handshaker.cc +6 -14
  99. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +9 -17
  100. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +3 -2
  101. data/src/core/handshaker/security/secure_endpoint.cc +38 -32
  102. data/src/core/handshaker/security/secure_endpoint.h +0 -2
  103. data/src/core/handshaker/security/security_handshaker.cc +25 -37
  104. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +2 -1
  105. data/src/core/lib/address_utils/parse_address.cc +27 -39
  106. data/src/core/lib/address_utils/sockaddr_utils.cc +5 -6
  107. data/src/core/lib/avl/avl.h +1 -1
  108. data/src/core/lib/channel/channel_args.cc +13 -17
  109. data/src/core/lib/channel/channel_args.h +19 -8
  110. data/src/core/lib/channel/channel_stack.cc +5 -63
  111. data/src/core/lib/channel/channel_stack.h +13 -37
  112. data/src/core/lib/channel/channel_stack_builder.h +0 -5
  113. data/src/core/lib/channel/channel_stack_builder_impl.cc +0 -142
  114. data/src/core/lib/channel/channel_stack_builder_impl.h +0 -2
  115. data/src/core/lib/channel/connected_channel.cc +37 -676
  116. data/src/core/lib/channel/promise_based_filter.cc +41 -47
  117. data/src/core/lib/channel/promise_based_filter.h +124 -477
  118. data/src/core/lib/channel/status_util.cc +1 -1
  119. data/src/core/lib/compression/compression.cc +1 -1
  120. data/src/core/lib/compression/message_compress.cc +6 -6
  121. data/src/core/lib/config/config_vars.cc +3 -8
  122. data/src/core/lib/config/config_vars.h +1 -5
  123. data/src/core/lib/debug/event_log.h +1 -1
  124. data/src/core/lib/debug/trace.cc +43 -59
  125. data/src/core/lib/debug/trace.h +2 -97
  126. data/src/core/lib/debug/trace_flags.cc +255 -0
  127. data/src/core/lib/debug/trace_flags.h +133 -0
  128. data/src/core/lib/debug/trace_impl.h +115 -0
  129. data/src/core/lib/event_engine/ares_resolver.cc +5 -7
  130. data/src/core/lib/event_engine/ares_resolver.h +1 -3
  131. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +1 -1
  132. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +17 -22
  133. data/src/core/lib/event_engine/event_engine.cc +29 -4
  134. data/src/core/lib/event_engine/extensions/supports_fd.h +7 -0
  135. data/src/core/lib/event_engine/extensions/tcp_trace.h +43 -0
  136. data/src/core/lib/event_engine/forkable.cc +4 -5
  137. data/src/core/lib/event_engine/forkable.h +0 -11
  138. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +10 -11
  139. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +4 -3
  140. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +1 -1
  141. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +19 -33
  142. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +3 -2
  143. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +24 -7
  144. data/src/core/lib/event_engine/posix_engine/posix_engine.h +2 -0
  145. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +14 -16
  146. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +18 -22
  147. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +13 -17
  148. data/src/core/lib/event_engine/posix_engine/timer.cc +1 -1
  149. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +4 -6
  150. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +2 -1
  151. data/src/core/lib/event_engine/shim.cc +1 -1
  152. data/src/core/lib/event_engine/tcp_socket_utils.cc +6 -8
  153. data/src/core/lib/event_engine/thread_local.h +1 -1
  154. data/src/core/lib/event_engine/thread_pool/thread_count.h +1 -1
  155. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +19 -21
  156. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +3 -6
  157. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +14 -13
  158. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +4 -3
  159. data/src/core/lib/event_engine/trace.h +6 -17
  160. data/src/core/lib/event_engine/windows/iocp.h +1 -1
  161. data/src/core/lib/event_engine/windows/win_socket.cc +23 -17
  162. data/src/core/lib/event_engine/windows/win_socket.h +4 -5
  163. data/src/core/lib/event_engine/windows/windows_endpoint.cc +6 -9
  164. data/src/core/lib/event_engine/windows/windows_engine.cc +201 -87
  165. data/src/core/lib/event_engine/windows/windows_engine.h +136 -25
  166. data/src/core/lib/event_engine/windows/windows_listener.cc +12 -23
  167. data/src/core/lib/experiments/experiments.cc +35 -151
  168. data/src/core/lib/experiments/experiments.h +12 -45
  169. data/src/core/lib/gprpp/bitset.h +1 -1
  170. data/src/core/lib/gprpp/crash.cc +2 -3
  171. data/src/core/lib/gprpp/dual_ref_counted.h +45 -33
  172. data/src/core/lib/gprpp/dump_args.cc +54 -0
  173. data/src/core/lib/gprpp/dump_args.h +69 -0
  174. data/src/core/lib/gprpp/glob.cc +70 -0
  175. data/src/core/lib/gprpp/glob.h +29 -0
  176. data/src/core/lib/gprpp/per_cpu.cc +1 -1
  177. data/src/core/lib/gprpp/posix/stat.cc +3 -4
  178. data/src/core/lib/gprpp/posix/thd.cc +8 -9
  179. data/src/core/lib/gprpp/ref_counted.h +30 -22
  180. data/src/core/lib/gprpp/single_set_ptr.h +5 -3
  181. data/src/core/lib/gprpp/status_helper.cc +11 -30
  182. data/src/core/lib/gprpp/status_helper.h +3 -31
  183. data/src/core/lib/gprpp/time.cc +3 -4
  184. data/src/core/lib/gprpp/time.h +3 -2
  185. data/src/core/lib/gprpp/unique_type_name.h +1 -1
  186. data/src/core/lib/gprpp/validation_errors.cc +10 -1
  187. data/src/core/lib/gprpp/validation_errors.h +11 -0
  188. data/src/core/lib/gprpp/windows/stat.cc +3 -4
  189. data/src/core/lib/gprpp/windows/thd.cc +3 -2
  190. data/src/core/lib/gprpp/work_serializer.cc +48 -57
  191. data/src/core/lib/iomgr/buffer_list.cc +4 -2
  192. data/src/core/lib/iomgr/call_combiner.cc +18 -27
  193. data/src/core/lib/iomgr/call_combiner.h +1 -3
  194. data/src/core/lib/iomgr/cfstream_handle.cc +4 -6
  195. data/src/core/lib/iomgr/closure.h +2 -4
  196. data/src/core/lib/iomgr/combiner.cc +6 -8
  197. data/src/core/lib/iomgr/combiner.h +0 -2
  198. data/src/core/lib/iomgr/endpoint.cc +0 -6
  199. data/src/core/lib/iomgr/endpoint.h +0 -2
  200. data/src/core/lib/iomgr/endpoint_cfstream.cc +19 -41
  201. data/src/core/lib/iomgr/endpoint_pair_posix.cc +1 -1
  202. data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -6
  203. data/src/core/lib/iomgr/error.cc +13 -21
  204. data/src/core/lib/iomgr/error.h +1 -1
  205. data/src/core/lib/iomgr/ev_apple.cc +3 -5
  206. data/src/core/lib/iomgr/ev_epoll1_linux.cc +43 -42
  207. data/src/core/lib/iomgr/ev_poll_posix.cc +38 -29
  208. data/src/core/lib/iomgr/ev_posix.cc +8 -9
  209. data/src/core/lib/iomgr/ev_posix.h +10 -7
  210. data/src/core/lib/iomgr/event_engine_shims/closure.cc +2 -2
  211. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +14 -28
  212. data/src/core/lib/iomgr/exec_ctx.cc +2 -2
  213. data/src/core/lib/iomgr/exec_ctx.h +1 -1
  214. data/src/core/lib/iomgr/executor.cc +6 -15
  215. data/src/core/lib/iomgr/executor.h +1 -1
  216. data/src/core/lib/iomgr/fork_posix.cc +8 -10
  217. data/src/core/lib/iomgr/fork_windows.cc +3 -1
  218. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +2 -3
  219. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +3 -5
  220. data/src/core/lib/iomgr/internal_errqueue.cc +4 -2
  221. data/src/core/lib/iomgr/iocp_windows.cc +4 -3
  222. data/src/core/lib/iomgr/iomgr.cc +13 -17
  223. data/src/core/lib/iomgr/lockfree_event.cc +3 -5
  224. data/src/core/lib/iomgr/pollset.h +0 -2
  225. data/src/core/lib/iomgr/pollset_windows.cc +0 -2
  226. data/src/core/lib/iomgr/resolve_address_posix.cc +7 -14
  227. data/src/core/lib/iomgr/resolve_address_windows.cc +1 -1
  228. data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
  229. data/src/core/lib/iomgr/socket_mutator.cc +1 -1
  230. data/src/core/lib/iomgr/socket_utils_common_posix.cc +11 -17
  231. data/src/core/lib/iomgr/socket_windows.cc +4 -6
  232. data/src/core/lib/iomgr/tcp_client_cfstream.cc +3 -5
  233. data/src/core/lib/iomgr/tcp_client_posix.cc +9 -15
  234. data/src/core/lib/iomgr/tcp_client_windows.cc +2 -4
  235. data/src/core/lib/iomgr/tcp_posix.cc +57 -84
  236. data/src/core/lib/iomgr/tcp_posix.h +0 -2
  237. data/src/core/lib/iomgr/tcp_server_posix.cc +3 -3
  238. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +4 -6
  239. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +7 -7
  240. data/src/core/lib/iomgr/tcp_server_windows.cc +10 -16
  241. data/src/core/lib/iomgr/tcp_windows.cc +25 -41
  242. data/src/core/lib/iomgr/timer_generic.cc +17 -20
  243. data/src/core/lib/iomgr/timer_heap.cc +1 -1
  244. data/src/core/lib/iomgr/timer_manager.cc +17 -30
  245. data/src/core/lib/iomgr/unix_sockets_posix.cc +1 -1
  246. data/src/core/lib/iomgr/vsock.cc +1 -1
  247. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +3 -3
  248. data/src/core/lib/promise/activity.h +27 -4
  249. data/src/core/lib/promise/cancel_callback.h +24 -0
  250. data/src/core/lib/promise/context.h +11 -0
  251. data/src/core/lib/promise/detail/basic_seq.h +1 -2
  252. data/src/core/lib/promise/detail/join_state.h +354 -398
  253. data/src/core/lib/promise/detail/promise_like.h +6 -5
  254. data/src/core/lib/promise/detail/seq_state.h +1178 -1178
  255. data/src/core/lib/promise/for_each.h +6 -6
  256. data/src/core/lib/promise/interceptor_list.h +6 -7
  257. data/src/core/lib/promise/latch.h +9 -9
  258. data/src/core/lib/promise/map.h +17 -0
  259. data/src/core/lib/promise/observable.h +182 -0
  260. data/src/core/lib/promise/party.cc +7 -8
  261. data/src/core/lib/promise/party.h +10 -8
  262. data/src/core/lib/promise/pipe.h +16 -35
  263. data/src/core/lib/promise/promise.h +1 -0
  264. data/src/core/lib/promise/status_flag.h +2 -0
  265. data/src/core/lib/resource_quota/arena.cc +56 -79
  266. data/src/core/lib/resource_quota/arena.h +118 -209
  267. data/src/core/lib/resource_quota/memory_quota.cc +12 -13
  268. data/src/core/lib/resource_quota/memory_quota.h +2 -3
  269. data/src/core/lib/resource_quota/periodic_update.cc +1 -1
  270. data/src/core/lib/resource_quota/resource_quota.h +1 -1
  271. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
  272. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
  273. data/src/core/lib/security/authorization/evaluate_args.cc +6 -8
  274. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +5 -6
  275. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +1 -0
  276. data/src/core/lib/security/authorization/matchers.cc +3 -3
  277. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +2 -2
  278. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +2 -3
  279. data/src/core/lib/security/context/security_context.cc +12 -13
  280. data/src/core/lib/security/context/security_context.h +31 -8
  281. data/src/core/lib/security/credentials/alts/alts_credentials.h +1 -1
  282. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +3 -1
  283. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +2 -3
  284. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +5 -5
  285. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +3 -3
  286. data/src/core/lib/security/credentials/call_creds_util.cc +2 -1
  287. data/src/core/lib/security/credentials/channel_creds_registry.h +2 -2
  288. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +5 -3
  289. data/src/core/lib/security/credentials/composite/composite_credentials.h +1 -1
  290. data/src/core/lib/security/credentials/credentials.cc +6 -6
  291. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +4 -4
  292. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +2 -2
  293. data/src/core/lib/security/credentials/external/external_account_credentials.cc +9 -11
  294. data/src/core/lib/security/credentials/external/external_account_credentials.h +3 -3
  295. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +2 -2
  296. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +4 -4
  297. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -1
  298. data/src/core/lib/security/credentials/fake/fake_credentials.h +1 -1
  299. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +3 -3
  300. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +11 -11
  301. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +1 -1
  302. data/src/core/lib/security/credentials/iam/iam_credentials.h +1 -1
  303. data/src/core/lib/security/credentials/jwt/json_token.cc +14 -15
  304. data/src/core/lib/security/credentials/jwt/json_token.h +1 -1
  305. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +6 -5
  306. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +1 -1
  307. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +50 -54
  308. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
  309. data/src/core/lib/security/credentials/local/local_credentials.h +1 -1
  310. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +12 -11
  311. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +4 -4
  312. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +6 -7
  313. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +1 -3
  314. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +15 -21
  315. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +1 -1
  316. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +21 -30
  317. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +1 -1
  318. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +1 -1
  319. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +4 -4
  320. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +3 -5
  321. data/src/core/lib/security/credentials/tls/tls_credentials.cc +14 -16
  322. data/src/core/lib/security/credentials/tls/tls_utils.cc +4 -4
  323. data/src/core/lib/security/credentials/xds/xds_credentials.cc +1 -1
  324. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +13 -16
  325. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +15 -12
  326. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +6 -6
  327. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +1 -1
  328. data/src/core/lib/security/security_connector/local/local_security_connector.cc +8 -12
  329. data/src/core/lib/security/security_connector/security_connector.cc +1 -4
  330. data/src/core/lib/security/security_connector/security_connector.h +1 -3
  331. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +17 -19
  332. data/src/core/lib/security/security_connector/ssl_utils.cc +19 -21
  333. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +29 -40
  334. data/src/core/lib/security/transport/auth_filters.h +1 -0
  335. data/src/core/lib/security/transport/client_auth_filter.cc +7 -13
  336. data/src/core/lib/security/transport/server_auth_filter.cc +3 -8
  337. data/src/core/lib/security/util/json_util.h +1 -1
  338. data/src/core/lib/slice/slice.h +1 -1
  339. data/src/core/lib/slice/slice_refcount.h +2 -4
  340. data/src/core/lib/slice/slice_string_helpers.cc +1 -1
  341. data/src/core/lib/surface/api_trace.h +1 -3
  342. data/src/core/lib/surface/call.cc +64 -3738
  343. data/src/core/lib/surface/call.h +41 -143
  344. data/src/core/lib/surface/call_log_batch.cc +1 -1
  345. data/src/core/lib/surface/call_utils.cc +276 -0
  346. data/src/core/lib/surface/call_utils.h +449 -0
  347. data/src/core/lib/surface/channel.cc +8 -3
  348. data/src/core/lib/surface/channel.h +10 -7
  349. data/src/core/lib/surface/channel_create.cc +14 -6
  350. data/src/core/lib/surface/channel_create.h +3 -2
  351. data/src/core/lib/surface/channel_init.cc +21 -77
  352. data/src/core/lib/surface/channel_init.h +19 -97
  353. data/src/core/lib/surface/client_call.cc +419 -0
  354. data/src/core/lib/surface/client_call.h +180 -0
  355. data/src/core/lib/surface/completion_queue.cc +28 -33
  356. data/src/core/lib/surface/completion_queue.h +0 -8
  357. data/src/core/lib/surface/filter_stack_call.cc +1157 -0
  358. data/src/core/lib/surface/filter_stack_call.h +369 -0
  359. data/src/core/lib/surface/init.cc +7 -6
  360. data/src/core/lib/surface/lame_client.cc +1 -1
  361. data/src/core/lib/surface/legacy_channel.cc +40 -27
  362. data/src/core/lib/surface/legacy_channel.h +9 -18
  363. data/src/core/lib/surface/server_call.cc +222 -0
  364. data/src/core/lib/surface/server_call.h +167 -0
  365. data/src/core/lib/surface/version.cc +2 -2
  366. data/src/core/lib/transport/bdp_estimator.cc +3 -5
  367. data/src/core/lib/transport/bdp_estimator.h +2 -4
  368. data/src/core/lib/transport/call_arena_allocator.h +9 -7
  369. data/src/core/lib/transport/call_destination.h +76 -0
  370. data/src/core/lib/transport/call_filters.cc +28 -10
  371. data/src/core/lib/transport/call_filters.h +128 -22
  372. data/src/core/lib/transport/call_spine.cc +5 -6
  373. data/src/core/lib/transport/call_spine.h +159 -334
  374. data/src/core/lib/transport/connectivity_state.cc +8 -10
  375. data/src/core/lib/transport/connectivity_state.h +0 -2
  376. data/src/core/lib/transport/interception_chain.cc +155 -0
  377. data/src/core/lib/transport/interception_chain.h +236 -0
  378. data/src/core/lib/transport/metadata_batch.h +10 -1
  379. data/src/core/lib/transport/metadata_info.h +1 -1
  380. data/src/core/lib/transport/transport.cc +3 -6
  381. data/src/core/lib/transport/transport.h +43 -40
  382. data/src/core/load_balancing/child_policy_handler.cc +8 -8
  383. data/src/core/load_balancing/endpoint_list.cc +5 -5
  384. data/src/core/load_balancing/endpoint_list.h +1 -1
  385. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +1 -0
  386. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +1 -0
  387. data/src/core/load_balancing/grpclb/grpclb.cc +25 -29
  388. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +1 -1
  389. data/src/core/load_balancing/grpclb/load_balancer_api.cc +3 -4
  390. data/src/core/load_balancing/health_check_client.cc +10 -13
  391. data/src/core/load_balancing/lb_policy.cc +5 -8
  392. data/src/core/load_balancing/lb_policy.h +19 -3
  393. data/src/core/load_balancing/lb_policy_factory.h +1 -1
  394. data/src/core/load_balancing/lb_policy_registry.cc +2 -3
  395. data/src/core/load_balancing/lb_policy_registry.h +1 -1
  396. data/src/core/load_balancing/oob_backend_metric.cc +2 -4
  397. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +33 -35
  398. data/src/core/load_balancing/outlier_detection/outlier_detection.h +3 -3
  399. data/src/core/load_balancing/pick_first/pick_first.cc +65 -65
  400. data/src/core/load_balancing/priority/priority.cc +26 -28
  401. data/src/core/load_balancing/ring_hash/ring_hash.cc +11 -13
  402. data/src/core/load_balancing/ring_hash/ring_hash.h +3 -3
  403. data/src/core/load_balancing/rls/rls.cc +82 -82
  404. data/src/core/load_balancing/round_robin/round_robin.cc +17 -20
  405. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +54 -43
  406. data/src/core/load_balancing/weighted_target/weighted_target.cc +21 -24
  407. data/src/core/load_balancing/xds/cds.cc +14 -16
  408. data/src/core/load_balancing/xds/xds_cluster_impl.cc +16 -18
  409. data/src/core/load_balancing/xds/xds_cluster_manager.cc +15 -17
  410. data/src/core/load_balancing/xds/xds_override_host.cc +40 -41
  411. data/src/core/load_balancing/xds/xds_override_host.h +3 -3
  412. data/src/core/load_balancing/xds/xds_wrr_locality.cc +10 -12
  413. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -1
  414. data/src/core/resolver/binder/binder_resolver.cc +3 -2
  415. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +3 -2
  416. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +1 -1
  417. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +7 -14
  418. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +1 -5
  419. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  420. data/src/core/resolver/dns/dns_resolver_plugin.cc +6 -5
  421. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +4 -9
  422. data/src/core/resolver/dns/event_engine/service_config_helper.cc +5 -5
  423. data/src/core/resolver/dns/native/dns_resolver.cc +8 -9
  424. data/src/core/resolver/endpoint_addresses.cc +1 -1
  425. data/src/core/resolver/fake/fake_resolver.cc +1 -1
  426. data/src/core/resolver/fake/fake_resolver.h +1 -1
  427. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +13 -14
  428. data/src/core/resolver/polling_resolver.cc +30 -35
  429. data/src/core/resolver/resolver.cc +2 -6
  430. data/src/core/resolver/resolver.h +0 -2
  431. data/src/core/resolver/resolver_registry.cc +6 -8
  432. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +3 -3
  433. data/src/core/resolver/xds/xds_dependency_manager.cc +22 -23
  434. data/src/core/resolver/xds/xds_resolver.cc +13 -15
  435. data/src/core/server/server.cc +269 -389
  436. data/src/core/server/server.h +37 -19
  437. data/src/core/server/server_call_tracer_filter.cc +7 -14
  438. data/src/core/server/server_config_selector.h +1 -1
  439. data/src/core/server/server_config_selector_filter.cc +3 -3
  440. data/src/core/server/server_interface.h +2 -0
  441. data/src/core/server/xds_channel_stack_modifier.cc +1 -1
  442. data/src/core/server/xds_channel_stack_modifier.h +1 -1
  443. data/src/core/server/xds_server_config_fetcher.cc +1 -4
  444. data/src/core/service_config/service_config.h +1 -1
  445. data/src/core/service_config/service_config_call_data.h +13 -11
  446. data/src/core/service_config/service_config_channel_arg_filter.cc +6 -4
  447. data/src/core/service_config/service_config_impl.cc +5 -5
  448. data/src/core/service_config/service_config_impl.h +1 -1
  449. data/src/core/service_config/service_config_parser.cc +3 -6
  450. data/src/core/service_config/service_config_parser.h +1 -1
  451. data/src/core/{lib/channel → telemetry}/call_tracer.cc +20 -30
  452. data/src/core/{lib/channel → telemetry}/call_tracer.h +32 -9
  453. data/src/core/{lib/debug → telemetry}/histogram_view.cc +1 -1
  454. data/src/core/{lib/debug → telemetry}/histogram_view.h +3 -3
  455. data/src/core/telemetry/metrics.cc +178 -0
  456. data/src/core/telemetry/metrics.h +562 -0
  457. data/src/core/{lib/debug → telemetry}/stats.cc +1 -1
  458. data/src/core/{lib/debug → telemetry}/stats.h +5 -5
  459. data/src/core/{lib/debug → telemetry}/stats_data.cc +1 -1
  460. data/src/core/{lib/debug → telemetry}/stats_data.h +4 -4
  461. data/src/core/{lib/channel → telemetry}/tcp_tracer.h +3 -3
  462. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +12 -13
  463. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +25 -27
  464. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +32 -33
  465. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -1
  466. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -1
  467. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +5 -4
  468. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +5 -3
  469. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +1 -1
  470. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +4 -3
  471. data/src/core/tsi/fake_transport_security.cc +14 -17
  472. data/src/core/tsi/local_transport_security.cc +6 -5
  473. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +4 -4
  474. data/src/core/tsi/ssl_transport_security.cc +76 -81
  475. data/src/core/tsi/ssl_transport_security_utils.cc +74 -18
  476. data/src/core/tsi/ssl_transport_security_utils.h +11 -0
  477. data/src/core/tsi/transport_security.cc +0 -4
  478. data/src/core/tsi/transport_security.h +0 -2
  479. data/src/core/tsi/transport_security_interface.h +0 -4
  480. data/src/core/{lib/gpr → util}/alloc.h +3 -3
  481. data/src/core/{lib/gpr → util}/android/log.cc +0 -19
  482. data/src/core/{lib/gpr → util}/atm.cc +1 -1
  483. data/src/core/{ext/gcp/metadata_query.cc → util/gcp_metadata_query.cc} +25 -26
  484. data/src/core/{ext/gcp/metadata_query.h → util/gcp_metadata_query.h} +11 -11
  485. data/src/core/{lib/http → util/http_client}/format_request.cc +4 -3
  486. data/src/core/{lib/http → util/http_client}/format_request.h +6 -5
  487. data/src/core/{lib/http → util/http_client}/httpcli.cc +9 -10
  488. data/src/core/{lib/http → util/http_client}/httpcli.h +6 -5
  489. data/src/core/{lib/http → util/http_client}/httpcli_security_connector.cc +9 -9
  490. data/src/core/{lib/http → util/http_client}/httpcli_ssl_credentials.h +5 -4
  491. data/src/core/{lib/http → util/http_client}/parser.cc +4 -5
  492. data/src/core/{lib/http → util/http_client}/parser.h +5 -6
  493. data/src/core/{lib → util}/json/json.h +5 -4
  494. data/src/core/{lib → util}/json/json_args.h +5 -5
  495. data/src/core/{lib → util}/json/json_channel_args.h +6 -6
  496. data/src/core/{lib → util}/json/json_object_loader.cc +3 -2
  497. data/src/core/{lib → util}/json/json_object_loader.h +7 -7
  498. data/src/core/{lib → util}/json/json_reader.cc +3 -2
  499. data/src/core/{lib → util}/json/json_reader.h +6 -6
  500. data/src/core/{lib → util}/json/json_util.cc +4 -4
  501. data/src/core/{lib → util}/json/json_util.h +6 -6
  502. data/src/core/{lib → util}/json/json_writer.cc +3 -3
  503. data/src/core/{lib → util}/json/json_writer.h +6 -6
  504. data/src/core/{lib/gpr → util}/linux/log.cc +0 -45
  505. data/src/core/util/log.cc +165 -0
  506. data/src/core/{lib/gpr → util}/msys/tmpfile.cc +2 -2
  507. data/src/core/{lib/gpr → util}/posix/cpu.cc +1 -1
  508. data/src/core/{lib/gpr → util}/posix/log.cc +0 -42
  509. data/src/core/{lib/gpr → util}/posix/time.cc +1 -1
  510. data/src/core/{lib/gpr → util}/posix/tmpfile.cc +2 -2
  511. data/src/core/{lib/gpr → util}/spinlock.h +3 -3
  512. data/src/core/{lib/gpr → util}/string.cc +2 -2
  513. data/src/core/{lib/gpr → util}/string.h +3 -3
  514. data/src/core/{lib/gpr → util}/time_precise.cc +1 -1
  515. data/src/core/{lib/gpr → util}/time_precise.h +3 -3
  516. data/src/core/{lib/gpr → util}/tmpfile.h +3 -3
  517. data/src/core/{lib/gpr → util}/useful.h +3 -3
  518. data/src/core/{lib/gpr → util}/windows/log.cc +1 -44
  519. data/src/core/{lib/gpr → util}/windows/string.cc +1 -1
  520. data/src/core/{lib/gpr → util}/windows/string_util.cc +1 -1
  521. data/src/core/{lib/gpr → util}/windows/time.cc +1 -1
  522. data/src/core/{lib/gpr → util}/windows/tmpfile.cc +1 -1
  523. data/src/core/xds/grpc/certificate_provider_store.cc +3 -3
  524. data/src/core/xds/grpc/certificate_provider_store.h +4 -4
  525. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +3 -3
  526. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +3 -3
  527. data/src/core/xds/grpc/xds_audit_logger_registry.h +1 -1
  528. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +5 -5
  529. data/src/core/xds/grpc/xds_bootstrap_grpc.h +3 -3
  530. data/src/core/xds/grpc/xds_certificate_provider.h +1 -1
  531. data/src/core/xds/grpc/xds_client_grpc.cc +27 -23
  532. data/src/core/xds/grpc/xds_client_grpc.h +2 -2
  533. data/src/core/xds/grpc/xds_cluster.cc +4 -5
  534. data/src/core/xds/grpc/xds_cluster.h +1 -1
  535. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +2 -2
  536. data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +1 -1
  537. data/src/core/xds/grpc/xds_common_types.cc +1 -1
  538. data/src/core/xds/grpc/xds_common_types.h +1 -1
  539. data/src/core/xds/grpc/xds_endpoint.cc +4 -5
  540. data/src/core/xds/grpc/xds_http_fault_filter.cc +2 -2
  541. data/src/core/xds/grpc/xds_http_filters.h +2 -2
  542. data/src/core/xds/grpc/xds_http_rbac_filter.cc +3 -3
  543. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +2 -2
  544. data/src/core/xds/grpc/xds_lb_policy_registry.h +1 -1
  545. data/src/core/xds/grpc/xds_listener.cc +4 -6
  546. data/src/core/xds/grpc/xds_route_config.cc +7 -8
  547. data/src/core/xds/grpc/xds_transport_grpc.cc +2 -2
  548. data/src/core/xds/grpc/xds_transport_grpc.h +1 -1
  549. data/src/core/xds/xds_client/xds_api.cc +5 -9
  550. data/src/core/xds/xds_client/xds_bootstrap.cc +1 -1
  551. data/src/core/xds/xds_client/xds_bootstrap.h +1 -1
  552. data/src/core/xds/xds_client/xds_client.cc +39 -45
  553. data/src/core/xds/xds_client/xds_client.h +0 -3
  554. data/src/core/xds/xds_client/xds_client_stats.cc +6 -6
  555. data/src/core/xds/xds_client/xds_client_stats.h +2 -2
  556. data/src/ruby/bin/math_pb.rb +1 -22
  557. data/src/ruby/ext/grpc/rb_call.c +8 -1
  558. data/src/ruby/ext/grpc/rb_completion_queue.c +15 -32
  559. data/src/ruby/ext/grpc/rb_completion_queue.h +7 -1
  560. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +2 -2
  561. data/src/ruby/ext/grpc/rb_server.c +39 -22
  562. data/src/ruby/lib/grpc/version.rb +1 -1
  563. data/src/ruby/pb/grpc/health/v1/health_pb.rb +1 -22
  564. data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +5 -5
  565. data/src/ruby/pb/grpc/testing/metrics_pb.rb +10 -19
  566. data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +5 -5
  567. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +1 -22
  568. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +1 -22
  569. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -22
  570. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +4 -0
  571. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +12 -12
  572. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +66 -41
  573. data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +1497 -0
  574. data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +58 -0
  575. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +10 -3
  576. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -2
  577. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +2 -0
  578. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +5 -0
  579. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +45 -1
  580. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +33 -23
  581. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +3 -6
  582. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +9 -4
  583. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +6 -0
  584. data/third_party/boringssl-with-bazel/src/crypto/internal.h +7 -0
  585. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +0 -4
  586. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +49 -16
  587. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -10
  588. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +7 -17
  589. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -6
  590. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +3 -0
  591. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +125 -0
  592. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +0 -23
  593. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +1 -1
  594. data/third_party/boringssl-with-bazel/src/ssl/internal.h +4 -10
  595. metadata +103 -93
  596. data/src/core/ext/transport/chttp2/transport/http_trace.cc +0 -19
  597. data/src/core/ext/transport/chttp2/transport/http_trace.h +0 -24
  598. data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -23
  599. data/src/core/handshaker/security/tsi_error.cc +0 -31
  600. data/src/core/handshaker/security/tsi_error.h +0 -30
  601. data/src/core/lib/channel/channel_stack_trace.cc +0 -19
  602. data/src/core/lib/channel/channel_stack_trace.h +0 -24
  603. data/src/core/lib/channel/context.h +0 -105
  604. data/src/core/lib/channel/metrics.cc +0 -334
  605. data/src/core/lib/channel/metrics.h +0 -365
  606. data/src/core/lib/event_engine/trace.cc +0 -25
  607. data/src/core/lib/gpr/log.cc +0 -166
  608. data/src/core/lib/iomgr/ev_windows.cc +0 -30
  609. data/src/core/lib/promise/trace.cc +0 -20
  610. data/src/core/lib/promise/trace.h +0 -24
  611. data/src/core/lib/resource_quota/trace.cc +0 -19
  612. data/src/core/lib/resource_quota/trace.h +0 -24
  613. data/src/core/lib/slice/slice_refcount.cc +0 -20
  614. data/src/core/lib/surface/api_trace.cc +0 -25
  615. data/src/core/lib/surface/call_trace.h +0 -24
  616. data/src/core/lib/surface/wait_for_cq_end_op.cc +0 -75
  617. data/src/core/lib/surface/wait_for_cq_end_op.h +0 -72
  618. data/src/core/lib/transport/batch_builder.cc +0 -172
  619. data/src/core/lib/transport/batch_builder.h +0 -474
  620. data/src/core/resolver/xds/xds_resolver_trace.cc +0 -25
  621. data/src/core/resolver/xds/xds_resolver_trace.h +0 -30
  622. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -122
  623. /data/src/core/{lib/gpr → util}/alloc.cc +0 -0
  624. /data/src/core/{lib/gpr → util}/iphone/cpu.cc +0 -0
  625. /data/src/core/{lib/gpr → util}/linux/cpu.cc +0 -0
  626. /data/src/core/{lib/gpr → util}/posix/string.cc +0 -0
  627. /data/src/core/{lib/gpr → util}/posix/sync.cc +0 -0
  628. /data/src/core/{lib/gpr → util}/sync.cc +0 -0
  629. /data/src/core/{lib/gpr → util}/sync_abseil.cc +0 -0
  630. /data/src/core/{lib/gpr → util}/time.cc +0 -0
  631. /data/src/core/{lib/gpr → util}/windows/cpu.cc +0 -0
  632. /data/src/core/{lib/gpr → util}/windows/sync.cc +0 -0
@@ -27,18 +27,15 @@
27
27
 
28
28
  namespace grpc_core {
29
29
 
30
- DebugOnlyTraceFlag grpc_trace_lb_policy_refcount(false, "lb_policy_refcount");
31
-
32
30
  //
33
31
  // LoadBalancingPolicy
34
32
  //
35
33
 
36
34
  LoadBalancingPolicy::LoadBalancingPolicy(Args args, intptr_t initial_refcount)
37
- : InternallyRefCounted(
38
- GRPC_TRACE_FLAG_ENABLED(grpc_trace_lb_policy_refcount)
39
- ? "LoadBalancingPolicy"
40
- : nullptr,
41
- initial_refcount),
35
+ : InternallyRefCounted(GRPC_TRACE_FLAG_ENABLED(lb_policy_refcount)
36
+ ? "LoadBalancingPolicy"
37
+ : nullptr,
38
+ initial_refcount),
42
39
  work_serializer_(std::move(args.work_serializer)),
43
40
  interested_parties_(grpc_pollset_set_create()),
44
41
  channel_control_helper_(std::move(args.channel_control_helper)),
@@ -58,7 +55,7 @@ void LoadBalancingPolicy::Orphan() {
58
55
  //
59
56
 
60
57
  LoadBalancingPolicy::SubchannelPicker::SubchannelPicker()
61
- : DualRefCounted(GRPC_TRACE_FLAG_ENABLED(grpc_trace_lb_policy_refcount)
58
+ : DualRefCounted(GRPC_TRACE_FLAG_ENABLED(lb_policy_refcount)
62
59
  ? "SubchannelPicker"
63
60
  : nullptr) {}
64
61
 
@@ -38,7 +38,6 @@
38
38
  #include <grpc/support/port_platform.h>
39
39
 
40
40
  #include "src/core/lib/channel/channel_args.h"
41
- #include "src/core/lib/channel/metrics.h"
42
41
  #include "src/core/lib/debug/trace.h"
43
42
  #include "src/core/lib/gprpp/debug_location.h"
44
43
  #include "src/core/lib/gprpp/dual_ref_counted.h"
@@ -52,11 +51,10 @@
52
51
  #include "src/core/load_balancing/backend_metric_data.h"
53
52
  #include "src/core/load_balancing/subchannel_interface.h"
54
53
  #include "src/core/resolver/endpoint_addresses.h"
54
+ #include "src/core/telemetry/metrics.h"
55
55
 
56
56
  namespace grpc_core {
57
57
 
58
- extern DebugOnlyTraceFlag grpc_trace_lb_policy_refcount;
59
-
60
58
  /// Interface for load balancing policies.
61
59
  ///
62
60
  /// The following concepts are used here:
@@ -456,6 +454,19 @@ class LoadBalancingPolicy : public InternallyRefCounted<LoadBalancingPolicy> {
456
454
  absl::Status status_;
457
455
  };
458
456
 
457
+ // A picker that returns PickResult::Drop for all picks.
458
+ class DropPicker final : public SubchannelPicker {
459
+ public:
460
+ explicit DropPicker(absl::Status status) : status_(status) {}
461
+
462
+ PickResult Pick(PickArgs /*args*/) override {
463
+ return PickResult::Drop(status_);
464
+ }
465
+
466
+ private:
467
+ absl::Status status_;
468
+ };
469
+
459
470
  protected:
460
471
  std::shared_ptr<WorkSerializer> work_serializer() const {
461
472
  return work_serializer_;
@@ -484,6 +495,11 @@ class LoadBalancingPolicy : public InternallyRefCounted<LoadBalancingPolicy> {
484
495
  ChannelArgs channel_args_;
485
496
  };
486
497
 
498
+ template <>
499
+ struct ArenaContextType<LoadBalancingPolicy::SubchannelCallTrackerInterface> {
500
+ static void Destroy(LoadBalancingPolicy::SubchannelCallTrackerInterface*) {}
501
+ };
502
+
487
503
  } // namespace grpc_core
488
504
 
489
505
  #endif // GRPC_SRC_CORE_LOAD_BALANCING_LB_POLICY_H
@@ -24,8 +24,8 @@
24
24
 
25
25
  #include "src/core/lib/gprpp/orphanable.h"
26
26
  #include "src/core/lib/gprpp/ref_counted_ptr.h"
27
- #include "src/core/lib/json/json.h"
28
27
  #include "src/core/load_balancing/lb_policy.h"
28
+ #include "src/core/util/json/json.h"
29
29
 
30
30
  namespace grpc_core {
31
31
 
@@ -23,6 +23,7 @@
23
23
  #include <vector>
24
24
 
25
25
  #include "absl/log/check.h"
26
+ #include "absl/log/log.h"
26
27
  #include "absl/status/status.h"
27
28
  #include "absl/strings/str_cat.h"
28
29
  #include "absl/strings/str_format.h"
@@ -30,7 +31,6 @@
30
31
  #include "absl/strings/string_view.h"
31
32
 
32
33
  #include <grpc/support/json.h>
33
- #include <grpc/support/log.h>
34
34
  #include <grpc/support/port_platform.h>
35
35
 
36
36
  #include "src/core/load_balancing/lb_policy.h"
@@ -43,8 +43,7 @@ namespace grpc_core {
43
43
 
44
44
  void LoadBalancingPolicyRegistry::Builder::RegisterLoadBalancingPolicyFactory(
45
45
  std::unique_ptr<LoadBalancingPolicyFactory> factory) {
46
- gpr_log(GPR_DEBUG, "registering LB policy factory for \"%s\"",
47
- std::string(factory->name()).c_str());
46
+ VLOG(2) << "registering LB policy factory for \"" << factory->name() << "\"";
48
47
  CHECK(factories_.find(factory->name()) == factories_.end());
49
48
  factories_.emplace(factory->name(), std::move(factory));
50
49
  }
@@ -27,9 +27,9 @@
27
27
 
28
28
  #include "src/core/lib/gprpp/orphanable.h"
29
29
  #include "src/core/lib/gprpp/ref_counted_ptr.h"
30
- #include "src/core/lib/json/json.h"
31
30
  #include "src/core/load_balancing/lb_policy.h"
32
31
  #include "src/core/load_balancing/lb_policy_factory.h"
32
+ #include "src/core/util/json/json.h"
33
33
 
34
34
  namespace grpc_core {
35
35
 
@@ -59,8 +59,6 @@
59
59
 
60
60
  namespace grpc_core {
61
61
 
62
- TraceFlag grpc_orca_client_trace(false, "orca_client");
63
-
64
62
  //
65
63
  // OrcaProducer::ConnectivityWatcher
66
64
  //
@@ -271,12 +269,12 @@ void OrcaProducer::MaybeStartStreamLocked() {
271
269
  connected_subchannel_, subchannel_->pollset_set(),
272
270
  std::make_unique<OrcaStreamEventHandler>(
273
271
  WeakRefAsSubclass<OrcaProducer>(), report_interval_),
274
- GRPC_TRACE_FLAG_ENABLED(grpc_orca_client_trace) ? "OrcaClient" : nullptr);
272
+ GRPC_TRACE_FLAG_ENABLED(orca_client) ? "OrcaClient" : nullptr);
275
273
  }
276
274
 
277
275
  void OrcaProducer::NotifyWatchers(
278
276
  const BackendMetricData& backend_metric_data) {
279
- if (GRPC_TRACE_FLAG_ENABLED(grpc_orca_client_trace)) {
277
+ if (GRPC_TRACE_FLAG_ENABLED(orca_client)) {
280
278
  gpr_log(GPR_INFO, "OrcaProducer %p: reporting backend metrics to watchers",
281
279
  this);
282
280
  }
@@ -62,7 +62,6 @@
62
62
  #include "src/core/lib/iomgr/iomgr_fwd.h"
63
63
  #include "src/core/lib/iomgr/pollset_set.h"
64
64
  #include "src/core/lib/iomgr/resolved_address.h"
65
- #include "src/core/lib/json/json.h"
66
65
  #include "src/core/lib/transport/connectivity_state.h"
67
66
  #include "src/core/load_balancing/child_policy_handler.h"
68
67
  #include "src/core/load_balancing/delegating_helper.h"
@@ -72,11 +71,10 @@
72
71
  #include "src/core/load_balancing/lb_policy_registry.h"
73
72
  #include "src/core/load_balancing/subchannel_interface.h"
74
73
  #include "src/core/resolver/endpoint_addresses.h"
74
+ #include "src/core/util/json/json.h"
75
75
 
76
76
  namespace grpc_core {
77
77
 
78
- TraceFlag grpc_outlier_detection_lb_trace(false, "outlier_detection_lb");
79
-
80
78
  namespace {
81
79
 
82
80
  using ::grpc_event_engine::experimental::EventEngine;
@@ -534,7 +532,7 @@ OutlierDetectionLb::Picker::Picker(OutlierDetectionLb* outlier_detection_lb,
534
532
  RefCountedPtr<SubchannelPicker> picker,
535
533
  bool counting_enabled)
536
534
  : picker_(std::move(picker)), counting_enabled_(counting_enabled) {
537
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
535
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
538
536
  gpr_log(GPR_INFO,
539
537
  "[outlier_detection_lb %p] constructed new picker %p and counting "
540
538
  "is %s",
@@ -578,13 +576,13 @@ LoadBalancingPolicy::PickResult OutlierDetectionLb::Picker::Pick(
578
576
 
579
577
  OutlierDetectionLb::OutlierDetectionLb(Args args)
580
578
  : LoadBalancingPolicy(std::move(args)) {
581
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
579
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
582
580
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] created", this);
583
581
  }
584
582
  }
585
583
 
586
584
  OutlierDetectionLb::~OutlierDetectionLb() {
587
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
585
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
588
586
  gpr_log(GPR_INFO,
589
587
  "[outlier_detection_lb %p] destroying outlier_detection LB policy",
590
588
  this);
@@ -592,7 +590,7 @@ OutlierDetectionLb::~OutlierDetectionLb() {
592
590
  }
593
591
 
594
592
  void OutlierDetectionLb::ShutdownLocked() {
595
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
593
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
596
594
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] shutting down", this);
597
595
  }
598
596
  ejection_timer_.reset();
@@ -618,7 +616,7 @@ void OutlierDetectionLb::ResetBackoffLocked() {
618
616
  }
619
617
 
620
618
  absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
621
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
619
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
622
620
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] Received update", this);
623
621
  }
624
622
  auto old_config = std::move(config_);
@@ -627,7 +625,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
627
625
  // Update outlier detection timer.
628
626
  if (!config_->CountingEnabled()) {
629
627
  // No need for timer. Cancel the current timer, if any.
630
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
628
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
631
629
  gpr_log(GPR_INFO,
632
630
  "[outlier_detection_lb %p] counting disabled, cancelling timer",
633
631
  this);
@@ -635,7 +633,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
635
633
  ejection_timer_.reset();
636
634
  } else if (ejection_timer_ == nullptr) {
637
635
  // No timer running. Start it now.
638
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
636
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
639
637
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] starting timer", this);
640
638
  }
641
639
  ejection_timer_ = MakeOrphanable<EjectionTimer>(
@@ -649,7 +647,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
649
647
  // with the same start time.
650
648
  // Note that if the new deadline is in the past, the timer will fire
651
649
  // immediately.
652
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
650
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
653
651
  gpr_log(GPR_INFO,
654
652
  "[outlier_detection_lb %p] interval changed, replacing timer",
655
653
  this);
@@ -670,7 +668,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
670
668
  // Find the entry in the endpoint map.
671
669
  auto it = endpoint_state_map_.find(key);
672
670
  if (it == endpoint_state_map_.end()) {
673
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
671
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
674
672
  gpr_log(GPR_INFO,
675
673
  "[outlier_detection_lb %p] adding endpoint entry for %s",
676
674
  this, key.ToString().c_str());
@@ -682,7 +680,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
682
680
  for (const grpc_resolved_address& address : endpoint.addresses()) {
683
681
  auto it2 = subchannel_state_map_.find(address);
684
682
  if (it2 == subchannel_state_map_.end()) {
685
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
683
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
686
684
  std::string address_str = grpc_sockaddr_to_string(&address, false)
687
685
  .value_or("<unknown>");
688
686
  gpr_log(GPR_INFO,
@@ -700,7 +698,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
700
698
  key, MakeRefCounted<EndpointState>(std::move(subchannels)));
701
699
  } else if (!config_->CountingEnabled()) {
702
700
  // If counting is not enabled, reset state.
703
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
701
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
704
702
  gpr_log(GPR_INFO,
705
703
  "[outlier_detection_lb %p] counting disabled; disabling "
706
704
  "ejection for %s",
@@ -713,7 +711,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
713
711
  for (auto it = subchannel_state_map_.begin();
714
712
  it != subchannel_state_map_.end();) {
715
713
  if (current_addresses.find(it->first) == current_addresses.end()) {
716
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
714
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
717
715
  std::string address_str =
718
716
  grpc_sockaddr_to_string(&it->first, false).value_or("<unknown>");
719
717
  gpr_log(GPR_INFO,
@@ -733,7 +731,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
733
731
  for (auto it = endpoint_state_map_.begin();
734
732
  it != endpoint_state_map_.end();) {
735
733
  if (current_endpoints.find(it->first) == current_endpoints.end()) {
736
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
734
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
737
735
  gpr_log(GPR_INFO,
738
736
  "[outlier_detection_lb %p] removing endpoint map entry %s",
739
737
  this, it->first.ToString().c_str());
@@ -754,7 +752,7 @@ absl::Status OutlierDetectionLb::UpdateLocked(UpdateArgs args) {
754
752
  update_args.resolution_note = std::move(args.resolution_note);
755
753
  update_args.config = config_->child_policy();
756
754
  update_args.args = std::move(args.args);
757
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
755
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
758
756
  gpr_log(GPR_INFO,
759
757
  "[outlier_detection_lb %p] Updating child policy handler %p", this,
760
758
  child_policy_.get());
@@ -766,7 +764,7 @@ void OutlierDetectionLb::MaybeUpdatePickerLocked() {
766
764
  if (picker_ != nullptr) {
767
765
  auto outlier_detection_picker =
768
766
  MakeRefCounted<Picker>(this, picker_, config_->CountingEnabled());
769
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
767
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
770
768
  gpr_log(GPR_INFO,
771
769
  "[outlier_detection_lb %p] updating connectivity: state=%s "
772
770
  "status=(%s) picker=%p",
@@ -787,8 +785,8 @@ OrphanablePtr<LoadBalancingPolicy> OutlierDetectionLb::CreateChildPolicyLocked(
787
785
  RefAsSubclass<OutlierDetectionLb>(DEBUG_LOCATION, "Helper"));
788
786
  OrphanablePtr<LoadBalancingPolicy> lb_policy =
789
787
  MakeOrphanable<ChildPolicyHandler>(std::move(lb_policy_args),
790
- &grpc_outlier_detection_lb_trace);
791
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
788
+ &outlier_detection_lb_trace);
789
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
792
790
  gpr_log(GPR_INFO,
793
791
  "[outlier_detection_lb %p] Created new child policy handler %p",
794
792
  this, lb_policy.get());
@@ -814,7 +812,7 @@ RefCountedPtr<SubchannelInterface> OutlierDetectionLb::Helper::CreateSubchannel(
814
812
  if (it != parent()->subchannel_state_map_.end()) {
815
813
  subchannel_state = it->second->Ref();
816
814
  }
817
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
815
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
818
816
  std::string address_str =
819
817
  grpc_sockaddr_to_string(&address, false).value_or("<unknown>");
820
818
  gpr_log(GPR_INFO,
@@ -836,7 +834,7 @@ void OutlierDetectionLb::Helper::UpdateState(
836
834
  grpc_connectivity_state state, const absl::Status& status,
837
835
  RefCountedPtr<SubchannelPicker> picker) {
838
836
  if (parent()->shutting_down_) return;
839
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
837
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
840
838
  gpr_log(GPR_INFO,
841
839
  "[outlier_detection_lb %p] child connectivity state update: "
842
840
  "state=%s (%s) picker=%p",
@@ -859,7 +857,7 @@ OutlierDetectionLb::EjectionTimer::EjectionTimer(
859
857
  RefCountedPtr<OutlierDetectionLb> parent, Timestamp start_time)
860
858
  : parent_(std::move(parent)), start_time_(start_time) {
861
859
  auto interval = parent_->config_->outlier_detection_config().interval;
862
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
860
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
863
861
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] ejection timer will run in %s",
864
862
  parent_.get(), interval.ToString().c_str());
865
863
  }
@@ -885,7 +883,7 @@ void OutlierDetectionLb::EjectionTimer::Orphan() {
885
883
  void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
886
884
  if (!timer_handle_.has_value()) return;
887
885
  timer_handle_.reset();
888
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
886
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
889
887
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] ejection timer running",
890
888
  parent_.get());
891
889
  }
@@ -925,7 +923,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
925
923
  }
926
924
  }
927
925
  }
928
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
926
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
929
927
  gpr_log(GPR_INFO,
930
928
  "[outlier_detection_lb %p] found %" PRIuPTR
931
929
  " success rate candidates and %" PRIuPTR
@@ -939,7 +937,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
939
937
  if (!success_rate_ejection_candidates.empty() &&
940
938
  success_rate_ejection_candidates.size() >=
941
939
  config.success_rate_ejection->minimum_hosts) {
942
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
940
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
943
941
  gpr_log(GPR_INFO,
944
942
  "[outlier_detection_lb %p] running success rate algorithm: "
945
943
  "stdev_factor=%d, enforcement_percentage=%d",
@@ -958,13 +956,13 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
958
956
  const double success_rate_stdev_factor =
959
957
  static_cast<double>(config.success_rate_ejection->stdev_factor) / 1000;
960
958
  double ejection_threshold = mean - stdev * success_rate_stdev_factor;
961
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
959
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
962
960
  gpr_log(GPR_INFO,
963
961
  "[outlier_detection_lb %p] stdev=%.3f, ejection_threshold=%.3f",
964
962
  parent_.get(), stdev, ejection_threshold);
965
963
  }
966
964
  for (auto& candidate : success_rate_ejection_candidates) {
967
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
965
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
968
966
  gpr_log(GPR_INFO,
969
967
  "[outlier_detection_lb %p] checking candidate %p: "
970
968
  "success_rate=%.3f",
@@ -974,7 +972,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
974
972
  uint32_t random_key = absl::Uniform(bit_gen_, 1, 100);
975
973
  double current_percent =
976
974
  100.0 * ejected_host_count / parent_->endpoint_state_map_.size();
977
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
975
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
978
976
  gpr_log(GPR_INFO,
979
977
  "[outlier_detection_lb %p] random_key=%d "
980
978
  "ejected_host_count=%" PRIuPTR " current_percent=%.3f",
@@ -986,7 +984,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
986
984
  (current_percent < config.max_ejection_percent))) {
987
985
  // Eject and record the timestamp for use when ejecting addresses in
988
986
  // this iteration.
989
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
987
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
990
988
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] ejecting candidate",
991
989
  parent_.get());
992
990
  }
@@ -1000,7 +998,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
1000
998
  if (!failure_percentage_ejection_candidates.empty() &&
1001
999
  failure_percentage_ejection_candidates.size() >=
1002
1000
  config.failure_percentage_ejection->minimum_hosts) {
1003
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
1001
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
1004
1002
  gpr_log(GPR_INFO,
1005
1003
  "[outlier_detection_lb %p] running failure percentage algorithm: "
1006
1004
  "threshold=%d, enforcement_percentage=%d",
@@ -1008,7 +1006,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
1008
1006
  config.failure_percentage_ejection->enforcement_percentage);
1009
1007
  }
1010
1008
  for (auto& candidate : failure_percentage_ejection_candidates) {
1011
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
1009
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
1012
1010
  gpr_log(GPR_INFO,
1013
1011
  "[outlier_detection_lb %p] checking candidate %p: "
1014
1012
  "success_rate=%.3f",
@@ -1022,7 +1020,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
1022
1020
  uint32_t random_key = absl::Uniform(bit_gen_, 1, 100);
1023
1021
  double current_percent =
1024
1022
  100.0 * ejected_host_count / parent_->endpoint_state_map_.size();
1025
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
1023
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
1026
1024
  gpr_log(GPR_INFO,
1027
1025
  "[outlier_detection_lb %p] random_key=%d "
1028
1026
  "ejected_host_count=%" PRIuPTR " current_percent=%.3f",
@@ -1035,7 +1033,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
1035
1033
  (current_percent < config.max_ejection_percent))) {
1036
1034
  // Eject and record the timestamp for use when ejecting addresses in
1037
1035
  // this iteration.
1038
- if (GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
1036
+ if (GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
1039
1037
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] ejecting candidate",
1040
1038
  parent_.get());
1041
1039
  }
@@ -1055,7 +1053,7 @@ void OutlierDetectionLb::EjectionTimer::OnTimerLocked() {
1055
1053
  auto* endpoint_state = state.second.get();
1056
1054
  const bool unejected = endpoint_state->MaybeUneject(
1057
1055
  config.base_ejection_time.millis(), config.max_ejection_time.millis());
1058
- if (unejected && GRPC_TRACE_FLAG_ENABLED(grpc_outlier_detection_lb_trace)) {
1056
+ if (unejected && GRPC_TRACE_FLAG_ENABLED(outlier_detection_lb)) {
1059
1057
  gpr_log(GPR_INFO, "[outlier_detection_lb %p] unejected endpoint %s (%p)",
1060
1058
  parent_.get(), state.first.ToString().c_str(), endpoint_state);
1061
1059
  }
@@ -25,9 +25,9 @@
25
25
 
26
26
  #include "src/core/lib/gprpp/time.h"
27
27
  #include "src/core/lib/gprpp/validation_errors.h"
28
- #include "src/core/lib/json/json.h"
29
- #include "src/core/lib/json/json_args.h"
30
- #include "src/core/lib/json/json_object_loader.h"
28
+ #include "src/core/util/json/json.h"
29
+ #include "src/core/util/json/json_args.h"
30
+ #include "src/core/util/json/json_object_loader.h"
31
31
 
32
32
  namespace grpc_core {
33
33