grpc 1.62.0 → 1.65.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1867) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +497 -2042
  3. data/include/grpc/byte_buffer.h +1 -2
  4. data/include/grpc/census.h +1 -2
  5. data/include/grpc/compression.h +1 -2
  6. data/include/grpc/credentials.h +1222 -0
  7. data/include/grpc/event_engine/endpoint_config.h +2 -2
  8. data/include/grpc/event_engine/event_engine.h +17 -8
  9. data/include/grpc/event_engine/extensible.h +2 -2
  10. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -2
  11. data/include/grpc/event_engine/memory_allocator.h +1 -2
  12. data/include/grpc/event_engine/memory_request.h +2 -2
  13. data/include/grpc/event_engine/slice.h +1 -2
  14. data/include/grpc/event_engine/slice_buffer.h +1 -2
  15. data/include/grpc/grpc.h +8 -8
  16. data/include/grpc/grpc_audit_logging.h +1 -2
  17. data/include/grpc/grpc_crl_provider.h +3 -2
  18. data/include/grpc/grpc_cronet.h +1 -2
  19. data/include/grpc/grpc_posix.h +1 -2
  20. data/include/grpc/grpc_security.h +1 -1173
  21. data/include/grpc/impl/call.h +1 -2
  22. data/include/grpc/impl/channel_arg_names.h +11 -6
  23. data/include/grpc/impl/grpc_types.h +1 -2
  24. data/include/grpc/impl/slice_type.h +2 -2
  25. data/include/grpc/module.modulemap +3 -0
  26. data/include/grpc/passive_listener.h +62 -0
  27. data/include/grpc/slice.h +1 -2
  28. data/include/grpc/slice_buffer.h +1 -2
  29. data/include/grpc/support/alloc.h +2 -2
  30. data/include/grpc/support/json.h +2 -2
  31. data/include/grpc/support/log.h +9 -19
  32. data/include/grpc/support/metrics.h +51 -0
  33. data/include/grpc/support/port_platform.h +3 -0
  34. data/include/grpc/support/string_util.h +0 -1
  35. data/include/grpc/support/sync.h +0 -1
  36. data/include/grpc/support/sync_abseil.h +0 -1
  37. data/include/grpc/support/sync_custom.h +0 -1
  38. data/include/grpc/support/sync_generic.h +1 -2
  39. data/include/grpc/support/sync_posix.h +1 -2
  40. data/include/grpc/support/time.h +2 -2
  41. data/src/core/{lib/channel → channelz}/channel_trace.cc +57 -63
  42. data/src/core/{lib/channel → channelz}/channel_trace.h +22 -20
  43. data/src/core/{lib/channel → channelz}/channelz.cc +71 -9
  44. data/src/core/{lib/channel → channelz}/channelz.h +61 -19
  45. data/src/core/{lib/channel → channelz}/channelz_registry.cc +11 -9
  46. data/src/core/{lib/channel → channelz}/channelz_registry.h +7 -7
  47. data/src/core/client_channel/backup_poller.cc +4 -5
  48. data/src/core/client_channel/client_channel.cc +1324 -0
  49. data/src/core/client_channel/client_channel.h +243 -0
  50. data/src/core/client_channel/client_channel_filter.cc +354 -791
  51. data/src/core/client_channel/client_channel_filter.h +18 -81
  52. data/src/core/client_channel/client_channel_internal.h +20 -8
  53. data/src/core/client_channel/client_channel_plugin.cc +1 -14
  54. data/src/core/client_channel/client_channel_service_config.h +8 -7
  55. data/src/core/client_channel/config_selector.cc +1 -1
  56. data/src/core/client_channel/config_selector.h +6 -5
  57. data/src/core/client_channel/connector.h +1 -1
  58. data/src/core/client_channel/dynamic_filters.cc +6 -5
  59. data/src/core/client_channel/dynamic_filters.h +2 -4
  60. data/src/core/client_channel/load_balanced_call_destination.cc +336 -0
  61. data/src/core/client_channel/load_balanced_call_destination.h +49 -0
  62. data/src/core/client_channel/local_subchannel_pool.cc +5 -3
  63. data/src/core/client_channel/retry_filter.cc +3 -10
  64. data/src/core/client_channel/retry_filter.h +6 -10
  65. data/src/core/client_channel/retry_filter_legacy_call_data.cc +71 -77
  66. data/src/core/client_channel/retry_filter_legacy_call_data.h +9 -11
  67. data/src/core/client_channel/retry_service_config.cc +4 -5
  68. data/src/core/client_channel/retry_service_config.h +6 -6
  69. data/src/core/client_channel/retry_throttle.h +3 -2
  70. data/src/core/client_channel/subchannel.cc +233 -124
  71. data/src/core/client_channel/subchannel.h +36 -24
  72. data/src/core/client_channel/subchannel_pool_interface.cc +0 -2
  73. data/src/core/client_channel/subchannel_pool_interface.h +3 -5
  74. data/src/core/client_channel/subchannel_stream_client.cc +41 -56
  75. data/src/core/client_channel/subchannel_stream_client.h +4 -6
  76. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +14 -62
  77. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +3 -14
  78. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +7 -0
  79. data/src/core/ext/filters/census/grpc_context.cc +2 -4
  80. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +20 -25
  81. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +12 -11
  82. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +11 -16
  83. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +5 -4
  84. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
  85. data/src/core/ext/filters/http/client/http_client_filter.cc +6 -4
  86. data/src/core/ext/filters/http/client/http_client_filter.h +6 -5
  87. data/src/core/ext/filters/http/client_authority_filter.cc +5 -3
  88. data/src/core/ext/filters/http/client_authority_filter.h +6 -4
  89. data/src/core/ext/filters/http/http_filters_plugin.cc +15 -35
  90. data/src/core/ext/filters/http/message_compress/compression_filter.cc +27 -30
  91. data/src/core/ext/filters/http/message_compress/compression_filter.h +12 -9
  92. data/src/core/ext/filters/http/server/http_server_filter.cc +5 -5
  93. data/src/core/ext/filters/http/server/http_server_filter.h +6 -5
  94. data/src/core/ext/filters/message_size/message_size_filter.cc +30 -37
  95. data/src/core/ext/filters/message_size/message_size_filter.h +14 -12
  96. data/src/core/ext/filters/rbac/rbac_filter.cc +7 -12
  97. data/src/core/ext/filters/rbac/rbac_filter.h +6 -5
  98. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +4 -4
  99. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +1 -1
  100. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +14 -18
  101. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +4 -2
  102. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
  103. data/src/core/ext/transport/chttp2/alpn/alpn.cc +5 -4
  104. data/src/core/ext/transport/chttp2/alpn/alpn.h +2 -2
  105. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +22 -44
  106. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +2 -8
  107. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +266 -154
  108. data/src/core/ext/transport/chttp2/server/chttp2_server.h +36 -3
  109. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +6 -6
  110. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +1 -2
  111. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +8 -7
  112. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +1 -2
  113. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +204 -228
  114. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +33 -15
  115. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +16 -13
  116. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +2 -2
  117. data/src/core/ext/transport/chttp2/transport/decode_huff.h +2 -2
  118. data/src/core/ext/transport/chttp2/transport/flow_control.cc +6 -8
  119. data/src/core/ext/transport/chttp2/transport/flow_control.h +4 -6
  120. data/src/core/ext/transport/chttp2/transport/frame.cc +4 -4
  121. data/src/core/ext/transport/chttp2/transport/frame.h +2 -2
  122. data/src/core/ext/transport/chttp2/transport/frame_data.cc +3 -3
  123. data/src/core/ext/transport/chttp2/transport/frame_data.h +1 -2
  124. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +5 -5
  125. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -2
  126. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +7 -9
  127. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -2
  128. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +4 -5
  129. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -2
  130. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +10 -7
  131. data/src/core/ext/transport/chttp2/transport/frame_settings.h +1 -2
  132. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +4 -4
  133. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +1 -2
  134. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +2 -2
  135. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +9 -7
  136. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +10 -4
  137. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +10 -9
  138. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +2 -2
  139. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +4 -3
  140. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +3 -3
  141. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +30 -80
  142. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +2 -5
  143. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +8 -13
  144. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +2 -2
  145. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +3 -3
  146. data/src/core/ext/transport/chttp2/transport/http2_settings.h +3 -3
  147. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +2 -2
  148. data/src/core/ext/transport/chttp2/transport/internal.h +33 -23
  149. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc +4 -3
  150. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.h +2 -2
  151. data/src/core/ext/transport/chttp2/transport/parsing.cc +34 -49
  152. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +1 -2
  153. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.h +2 -2
  154. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +3 -5
  155. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +1 -4
  156. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +30 -15
  157. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +7 -6
  158. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +10 -11
  159. data/src/core/ext/transport/chttp2/transport/varint.cc +2 -2
  160. data/src/core/ext/transport/chttp2/transport/varint.h +4 -3
  161. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +4 -3
  162. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +2 -2
  163. data/src/core/ext/transport/chttp2/transport/writing.cc +91 -76
  164. data/src/core/ext/transport/inproc/inproc_transport.cc +65 -39
  165. data/src/core/ext/transport/inproc/inproc_transport.h +2 -5
  166. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +29 -31
  167. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +1 -4
  168. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +243 -230
  169. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +42 -48
  170. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +289 -265
  171. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +62 -70
  172. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +238 -226
  173. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +42 -50
  174. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +937 -882
  175. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +182 -208
  176. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +77 -76
  177. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +9 -9
  178. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +86 -84
  179. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +13 -13
  180. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +49 -42
  181. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +13 -13
  182. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +28 -24
  183. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +7 -7
  184. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +28 -24
  185. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +7 -7
  186. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +357 -318
  187. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +86 -86
  188. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +23 -20
  189. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +5 -7
  190. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +40 -32
  191. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +4 -4
  192. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +24 -20
  193. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +4 -4
  194. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +517 -473
  195. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +105 -125
  196. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +1207 -1108
  197. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +261 -289
  198. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +163 -152
  199. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +29 -43
  200. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +1265 -1137
  201. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +276 -346
  202. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +32 -28
  203. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +7 -9
  204. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +212 -188
  205. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +53 -69
  206. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +564 -508
  207. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +123 -131
  208. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +340 -309
  209. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +69 -83
  210. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +25 -22
  211. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +5 -11
  212. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +786 -688
  213. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +171 -189
  214. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +367 -343
  215. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +72 -80
  216. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +19 -16
  217. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +4 -4
  218. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +23 -20
  219. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +5 -7
  220. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +77 -76
  221. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +9 -9
  222. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +539 -471
  223. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +125 -141
  224. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +672 -632
  225. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +137 -137
  226. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +44 -43
  227. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +7 -7
  228. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +35 -30
  229. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +8 -8
  230. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +713 -637
  231. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +166 -208
  232. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +65 -61
  233. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +10 -12
  234. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +65 -61
  235. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +11 -13
  236. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +91 -83
  237. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +17 -17
  238. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +102 -93
  239. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +22 -22
  240. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +25 -22
  241. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +5 -11
  242. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +162 -145
  243. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +32 -40
  244. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +314 -287
  245. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +70 -74
  246. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +330 -309
  247. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +66 -66
  248. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +16 -14
  249. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +3 -7
  250. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +516 -478
  251. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +110 -120
  252. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +495 -468
  253. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +89 -101
  254. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +88 -78
  255. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +19 -37
  256. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +41 -36
  257. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +8 -26
  258. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +46 -40
  259. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +13 -13
  260. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +307 -279
  261. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +60 -64
  262. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +382 -358
  263. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +70 -70
  264. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +540 -490
  265. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +122 -136
  266. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +339 -327
  267. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +48 -70
  268. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +3407 -3145
  269. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +700 -752
  270. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +100 -91
  271. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +20 -20
  272. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +472 -430
  273. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +102 -116
  274. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +28 -24
  275. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +7 -7
  276. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +23 -20
  277. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +5 -7
  278. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +42 -36
  279. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +9 -13
  280. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +58 -55
  281. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +9 -13
  282. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +146 -136
  283. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +30 -30
  284. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +69 -65
  285. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +15 -15
  286. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +16 -14
  287. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +3 -7
  288. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +67 -58
  289. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +14 -24
  290. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +64 -56
  291. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +14 -20
  292. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +58 -50
  293. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +16 -16
  294. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +986 -832
  295. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +269 -281
  296. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +35 -35
  297. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +3 -3
  298. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +102 -88
  299. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +25 -25
  300. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +224 -204
  301. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +46 -62
  302. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +66 -58
  303. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +14 -24
  304. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +160 -153
  305. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +28 -30
  306. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +51 -44
  307. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +12 -12
  308. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1349 -1230
  309. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +293 -309
  310. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +16 -14
  311. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +3 -7
  312. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +61 -54
  313. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +13 -23
  314. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +124 -108
  315. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +29 -37
  316. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +14 -12
  317. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +3 -3
  318. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +66 -58
  319. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +20 -20
  320. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +16 -14
  321. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +3 -7
  322. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +518 -493
  323. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +82 -108
  324. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +92 -80
  325. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +23 -29
  326. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +497 -457
  327. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +110 -124
  328. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +58 -55
  329. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +9 -11
  330. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +206 -185
  331. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +48 -64
  332. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +7 -6
  333. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +1 -1
  334. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +766 -710
  335. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +140 -150
  336. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +102 -98
  337. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +17 -17
  338. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +310 -288
  339. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +67 -67
  340. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +30 -26
  341. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +8 -8
  342. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +77 -71
  343. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +13 -13
  344. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +26 -22
  345. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +6 -6
  346. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +70 -60
  347. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +15 -15
  348. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +77 -71
  349. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +14 -14
  350. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +44 -43
  351. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +7 -7
  352. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +28 -24
  353. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +6 -6
  354. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +19 -16
  355. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +4 -4
  356. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +65 -56
  357. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +15 -19
  358. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +14 -12
  359. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +2 -2
  360. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +97 -89
  361. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +18 -18
  362. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +63 -59
  363. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +10 -10
  364. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +134 -121
  365. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +29 -29
  366. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +135 -121
  367. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +26 -26
  368. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +141 -122
  369. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +37 -37
  370. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +49 -42
  371. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +11 -11
  372. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +14 -12
  373. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +3 -3
  374. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +35 -30
  375. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +8 -8
  376. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +63 -54
  377. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +15 -15
  378. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +58 -50
  379. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +14 -14
  380. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +28 -24
  381. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +7 -7
  382. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +32 -28
  383. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +7 -9
  384. data/src/core/ext/upb-gen/google/api/annotations.upb.h +10 -8
  385. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +1 -1
  386. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +581 -524
  387. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +118 -146
  388. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +616 -544
  389. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +136 -152
  390. data/src/core/ext/upb-gen/google/api/http.upb.h +176 -162
  391. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +34 -34
  392. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +49 -47
  393. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +8 -8
  394. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +21 -18
  395. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +5 -5
  396. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +2456 -2358
  397. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +367 -486
  398. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +21 -18
  399. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +5 -5
  400. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +7 -6
  401. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +1 -1
  402. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +134 -116
  403. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +27 -29
  404. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +21 -18
  405. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +5 -5
  406. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +126 -108
  407. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +27 -27
  408. data/src/core/ext/upb-gen/google/rpc/status.upb.h +49 -47
  409. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +8 -8
  410. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +107 -92
  411. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +27 -27
  412. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +77 -61
  413. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +21 -21
  414. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +577 -518
  415. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +121 -127
  416. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +46 -40
  417. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +10 -16
  418. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +28 -24
  419. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +6 -6
  420. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +265 -238
  421. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +57 -63
  422. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +96 -82
  423. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +19 -19
  424. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +496 -466
  425. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +81 -85
  426. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +99 -82
  427. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +16 -16
  428. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +31 -26
  429. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +6 -6
  430. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +10 -8
  431. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +1 -1
  432. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +31 -26
  433. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +6 -6
  434. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +24 -20
  435. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +4 -4
  436. data/src/core/ext/upb-gen/validate/validate.upb.h +2620 -2458
  437. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +363 -507
  438. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +99 -82
  439. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +16 -16
  440. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +31 -26
  441. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +6 -6
  442. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +10 -8
  443. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +1 -1
  444. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +93 -78
  445. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +17 -17
  446. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +24 -20
  447. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +4 -4
  448. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +14 -12
  449. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +3 -3
  450. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +23 -20
  451. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +5 -7
  452. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +58 -50
  453. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +15 -15
  454. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +33 -23
  455. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +8 -8
  456. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +23 -20
  457. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +5 -7
  458. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +32 -28
  459. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +9 -9
  460. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +103 -93
  461. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +21 -21
  462. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +37 -32
  463. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +9 -13
  464. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +127 -93
  465. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +34 -34
  466. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +44 -43
  467. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +6 -6
  468. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +23 -20
  469. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +6 -6
  470. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +79 -78
  471. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +9 -11
  472. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +7 -6
  473. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +1 -1
  474. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +86 -84
  475. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +13 -13
  476. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +324 -285
  477. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +74 -82
  478. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +237 -234
  479. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +30 -36
  480. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +33 -28
  481. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +7 -7
  482. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +97 -89
  483. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +18 -18
  484. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +53 -46
  485. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +12 -18
  486. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +63 -54
  487. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +15 -15
  488. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +23 -20
  489. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +5 -7
  490. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +2 -5
  491. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +2 -5
  492. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +2 -5
  493. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +2 -5
  494. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +2 -5
  495. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +2 -5
  496. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +2 -5
  497. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +2 -5
  498. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +2 -5
  499. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +2 -5
  500. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +2 -5
  501. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +2 -5
  502. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +2 -5
  503. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +2 -5
  504. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +2 -5
  505. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +2 -5
  506. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +2 -5
  507. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +2 -5
  508. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +2 -5
  509. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +2 -5
  510. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +2 -5
  511. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +2 -5
  512. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +2 -5
  513. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +2 -5
  514. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +2 -5
  515. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +2 -5
  516. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +2 -5
  517. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +2 -5
  518. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +2 -5
  519. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.h +2 -5
  520. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +2 -5
  521. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +2 -5
  522. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +2 -5
  523. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +2 -5
  524. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +2 -5
  525. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +2 -5
  526. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +2 -5
  527. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +2 -5
  528. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +2 -5
  529. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +2 -5
  530. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +2 -5
  531. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +2 -5
  532. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +2 -5
  533. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +2 -5
  534. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +2 -5
  535. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +2 -5
  536. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +2 -5
  537. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +2 -5
  538. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +2 -5
  539. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +2 -5
  540. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +2 -5
  541. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +2 -5
  542. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +2 -5
  543. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +2 -5
  544. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +2 -5
  545. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +2 -5
  546. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +2 -5
  547. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +2 -5
  548. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +2 -5
  549. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +2 -5
  550. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +2 -5
  551. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +2 -5
  552. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +2 -5
  553. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +2 -5
  554. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +2 -5
  555. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +2 -5
  556. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +2 -5
  557. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +2 -5
  558. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +2 -5
  559. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +2 -5
  560. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +2 -5
  561. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +2 -5
  562. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +2 -5
  563. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +2 -5
  564. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +2 -5
  565. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +2 -5
  566. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +2 -5
  567. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +2 -5
  568. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +2 -5
  569. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +2 -5
  570. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +2 -5
  571. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +2 -5
  572. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +2 -5
  573. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +2 -5
  574. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +2 -5
  575. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +2 -5
  576. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +2 -5
  577. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +2 -5
  578. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +2 -5
  579. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +2 -5
  580. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +2 -5
  581. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +2 -5
  582. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +2 -5
  583. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +2 -5
  584. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +2 -5
  585. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +2 -5
  586. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +2 -5
  587. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +2 -5
  588. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +2 -5
  589. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +2 -5
  590. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +2 -5
  591. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +2 -5
  592. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +2 -5
  593. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +2 -5
  594. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +2 -5
  595. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +2 -5
  596. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +2 -5
  597. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +2 -5
  598. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +2 -5
  599. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +2 -5
  600. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +2 -5
  601. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +2 -5
  602. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +2 -5
  603. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +385 -384
  604. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +2 -5
  605. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +2 -5
  606. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +2 -5
  607. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +2 -5
  608. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +2 -5
  609. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +2 -5
  610. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +2 -5
  611. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +2 -5
  612. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +2 -5
  613. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +2 -5
  614. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +2 -5
  615. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +2 -5
  616. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +2 -5
  617. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +2 -5
  618. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +2 -5
  619. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +2 -5
  620. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +2 -5
  621. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +2 -5
  622. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +2 -5
  623. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +2 -5
  624. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +2 -5
  625. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +2 -5
  626. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +2 -5
  627. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +2 -5
  628. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +2 -5
  629. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +2 -5
  630. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +2 -5
  631. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +2 -5
  632. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +2 -5
  633. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +2 -5
  634. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +2 -5
  635. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +2 -5
  636. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +2 -5
  637. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +2 -5
  638. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +2 -5
  639. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +2 -5
  640. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +2 -5
  641. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +2 -5
  642. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +2 -5
  643. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.cc +80 -0
  644. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.h +37 -0
  645. data/src/core/{lib/transport → handshaker}/handshaker.cc +14 -20
  646. data/src/core/{lib/transport → handshaker}/handshaker.h +4 -5
  647. data/src/core/{lib/transport → handshaker}/handshaker_factory.h +20 -5
  648. data/src/core/{lib/transport → handshaker}/handshaker_registry.cc +3 -3
  649. data/src/core/{lib/transport → handshaker}/handshaker_registry.h +6 -6
  650. data/src/core/{lib/transport → handshaker/http_connect}/http_connect_handshaker.cc +16 -25
  651. data/src/core/{lib/transport → handshaker/http_connect}/http_connect_handshaker.h +3 -3
  652. data/src/core/{client_channel → handshaker/http_connect}/http_proxy_mapper.cc +12 -12
  653. data/src/core/{client_channel → handshaker/http_connect}/http_proxy_mapper.h +7 -7
  654. data/src/core/{lib/handshaker → handshaker}/proxy_mapper.h +5 -5
  655. data/src/core/{lib/handshaker → handshaker}/proxy_mapper_registry.cc +3 -3
  656. data/src/core/{lib/handshaker → handshaker}/proxy_mapper_registry.h +6 -6
  657. data/src/core/{lib/security/transport → handshaker/security}/secure_endpoint.cc +42 -36
  658. data/src/core/{lib/security/transport → handshaker/security}/secure_endpoint.h +4 -7
  659. data/src/core/{lib/security/transport → handshaker/security}/security_handshaker.cc +52 -55
  660. data/src/core/{lib/security/transport → handshaker/security}/security_handshaker.h +8 -7
  661. data/src/core/{lib/transport → handshaker/tcp_connect}/tcp_connect_handshaker.cc +10 -9
  662. data/src/core/{lib/transport → handshaker/tcp_connect}/tcp_connect_handshaker.h +3 -3
  663. data/src/core/lib/address_utils/parse_address.cc +38 -41
  664. data/src/core/lib/address_utils/parse_address.h +2 -2
  665. data/src/core/lib/address_utils/sockaddr_utils.cc +28 -16
  666. data/src/core/lib/address_utils/sockaddr_utils.h +2 -2
  667. data/src/core/lib/avl/avl.h +3 -3
  668. data/src/core/lib/backoff/backoff.cc +2 -2
  669. data/src/core/lib/backoff/backoff.h +2 -2
  670. data/src/core/lib/backoff/random_early_detection.cc +2 -2
  671. data/src/core/lib/backoff/random_early_detection.h +2 -2
  672. data/src/core/lib/channel/call_finalization.h +3 -3
  673. data/src/core/lib/channel/channel_args.cc +17 -21
  674. data/src/core/lib/channel/channel_args.h +20 -10
  675. data/src/core/lib/channel/channel_args_preconditioning.cc +2 -2
  676. data/src/core/lib/channel/channel_args_preconditioning.h +1 -2
  677. data/src/core/lib/channel/channel_stack.cc +20 -68
  678. data/src/core/lib/channel/channel_stack.h +18 -38
  679. data/src/core/lib/channel/channel_stack_builder.cc +2 -2
  680. data/src/core/lib/channel/channel_stack_builder.h +2 -7
  681. data/src/core/lib/channel/channel_stack_builder_impl.cc +17 -26
  682. data/src/core/lib/channel/channel_stack_builder_impl.h +2 -4
  683. data/src/core/lib/channel/connected_channel.cc +40 -697
  684. data/src/core/lib/channel/promise_based_filter.cc +111 -122
  685. data/src/core/lib/channel/promise_based_filter.h +224 -480
  686. data/src/core/lib/channel/status_util.cc +3 -3
  687. data/src/core/lib/channel/status_util.h +1 -2
  688. data/src/core/lib/compression/compression.cc +2 -3
  689. data/src/core/lib/compression/compression_internal.cc +36 -3
  690. data/src/core/lib/compression/compression_internal.h +4 -2
  691. data/src/core/lib/compression/message_compress.cc +15 -14
  692. data/src/core/lib/compression/message_compress.h +1 -2
  693. data/src/core/lib/config/config_vars.cc +4 -7
  694. data/src/core/lib/config/config_vars.h +3 -3
  695. data/src/core/lib/config/config_vars_non_generated.cc +2 -2
  696. data/src/core/lib/config/core_configuration.cc +9 -8
  697. data/src/core/lib/config/core_configuration.h +8 -8
  698. data/src/core/lib/config/load_config.cc +4 -4
  699. data/src/core/lib/config/load_config.h +2 -2
  700. data/src/core/lib/debug/event_log.cc +3 -3
  701. data/src/core/lib/debug/event_log.h +3 -3
  702. data/src/core/lib/debug/trace.cc +44 -61
  703. data/src/core/lib/debug/trace.h +2 -97
  704. data/src/core/lib/debug/trace_flags.cc +255 -0
  705. data/src/core/lib/debug/trace_flags.h +133 -0
  706. data/src/core/lib/debug/trace_impl.h +115 -0
  707. data/src/core/lib/event_engine/ares_resolver.cc +23 -26
  708. data/src/core/lib/event_engine/ares_resolver.h +3 -5
  709. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +4 -2
  710. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +3 -3
  711. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +19 -23
  712. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +2 -1
  713. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +1 -2
  714. data/src/core/lib/event_engine/channel_args_endpoint_config.h +1 -2
  715. data/src/core/lib/event_engine/common_closures.h +1 -2
  716. data/src/core/lib/event_engine/default_event_engine.cc +1 -2
  717. data/src/core/lib/event_engine/default_event_engine.h +1 -8
  718. data/src/core/lib/event_engine/default_event_engine_factory.cc +1 -2
  719. data/src/core/lib/event_engine/default_event_engine_factory.h +1 -2
  720. data/src/core/lib/event_engine/event_engine.cc +29 -5
  721. data/src/core/lib/event_engine/event_engine_context.h +30 -0
  722. data/src/core/lib/event_engine/extensions/can_track_errors.h +2 -2
  723. data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +65 -0
  724. data/src/core/lib/event_engine/extensions/supports_fd.h +8 -2
  725. data/src/core/lib/event_engine/extensions/tcp_trace.h +43 -0
  726. data/src/core/lib/event_engine/forkable.cc +11 -11
  727. data/src/core/lib/event_engine/forkable.h +1 -13
  728. data/src/core/lib/event_engine/grpc_polled_fd.h +1 -2
  729. data/src/core/lib/event_engine/handle_containers.h +1 -2
  730. data/src/core/lib/event_engine/memory_allocator_factory.h +1 -2
  731. data/src/core/lib/event_engine/poller.h +1 -2
  732. data/src/core/lib/event_engine/posix.h +9 -2
  733. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +19 -19
  734. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +1 -2
  735. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +11 -11
  736. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +1 -2
  737. data/src/core/lib/event_engine/posix_engine/event_poller.h +1 -2
  738. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +2 -2
  739. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +2 -2
  740. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +1 -2
  741. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +5 -5
  742. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +2 -2
  743. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +3 -3
  744. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +2 -2
  745. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +1 -1
  746. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +2 -2
  747. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +43 -58
  748. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +14 -13
  749. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +34 -17
  750. data/src/core/lib/event_engine/posix_engine/posix_engine.h +3 -2
  751. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +1 -2
  752. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +18 -19
  753. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +1 -2
  754. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +25 -28
  755. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +1 -2
  756. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +26 -20
  757. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -3
  758. data/src/core/lib/event_engine/posix_engine/timer.cc +2 -3
  759. data/src/core/lib/event_engine/posix_engine/timer.h +1 -2
  760. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +2 -2
  761. data/src/core/lib/event_engine/posix_engine/timer_heap.h +2 -2
  762. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +9 -11
  763. data/src/core/lib/event_engine/posix_engine/timer_manager.h +1 -2
  764. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +3 -3
  765. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +1 -2
  766. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +2 -2
  767. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +2 -2
  768. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +2 -2
  769. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +2 -2
  770. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +2 -2
  771. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +2 -2
  772. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +2 -2
  773. data/src/core/lib/event_engine/query_extensions.h +3 -2
  774. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +1 -2
  775. data/src/core/lib/event_engine/resolved_address.cc +5 -4
  776. data/src/core/lib/event_engine/resolved_address_internal.h +1 -2
  777. data/src/core/lib/event_engine/shim.cc +3 -3
  778. data/src/core/lib/event_engine/slice.cc +4 -3
  779. data/src/core/lib/event_engine/slice_buffer.cc +1 -2
  780. data/src/core/lib/event_engine/tcp_socket_utils.cc +26 -17
  781. data/src/core/lib/event_engine/tcp_socket_utils.h +3 -4
  782. data/src/core/lib/event_engine/thread_local.cc +2 -2
  783. data/src/core/lib/event_engine/thread_local.h +1 -1
  784. data/src/core/lib/event_engine/thread_pool/thread_count.cc +1 -2
  785. data/src/core/lib/event_engine/thread_pool/thread_count.h +2 -3
  786. data/src/core/lib/event_engine/thread_pool/thread_pool.h +1 -2
  787. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +2 -2
  788. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +25 -28
  789. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +4 -8
  790. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +16 -15
  791. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +5 -5
  792. data/src/core/lib/event_engine/time_util.cc +1 -2
  793. data/src/core/lib/event_engine/time_util.h +1 -2
  794. data/src/core/lib/event_engine/trace.h +7 -19
  795. data/src/core/lib/event_engine/utils.cc +1 -2
  796. data/src/core/lib/event_engine/utils.h +1 -2
  797. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +31 -30
  798. data/src/core/lib/event_engine/windows/iocp.cc +10 -8
  799. data/src/core/lib/event_engine/windows/iocp.h +1 -1
  800. data/src/core/lib/event_engine/windows/win_socket.cc +34 -22
  801. data/src/core/lib/event_engine/windows/win_socket.h +7 -5
  802. data/src/core/lib/event_engine/windows/windows_endpoint.cc +19 -21
  803. data/src/core/lib/event_engine/windows/windows_engine.cc +225 -77
  804. data/src/core/lib/event_engine/windows/windows_engine.h +136 -25
  805. data/src/core/lib/event_engine/windows/windows_listener.cc +73 -35
  806. data/src/core/lib/event_engine/windows/windows_listener.h +14 -0
  807. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +2 -2
  808. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +1 -2
  809. data/src/core/lib/event_engine/work_queue/work_queue.h +1 -2
  810. data/src/core/lib/experiments/config.cc +66 -48
  811. data/src/core/lib/experiments/config.h +2 -2
  812. data/src/core/lib/experiments/experiments.cc +55 -375
  813. data/src/core/lib/experiments/experiments.h +36 -168
  814. data/src/core/lib/gprpp/atomic_utils.h +2 -2
  815. data/src/core/lib/gprpp/bitset.h +3 -3
  816. data/src/core/lib/gprpp/chunked_vector.h +6 -5
  817. data/src/core/lib/gprpp/construct_destruct.h +2 -2
  818. data/src/core/lib/gprpp/crash.cc +3 -5
  819. data/src/core/lib/gprpp/crash.h +2 -2
  820. data/src/core/lib/gprpp/debug_location.h +2 -2
  821. data/src/core/lib/gprpp/directory_reader.h +2 -2
  822. data/src/core/lib/gprpp/down_cast.h +7 -7
  823. data/src/core/lib/gprpp/dual_ref_counted.h +69 -48
  824. data/src/core/lib/gprpp/dump_args.cc +54 -0
  825. data/src/core/lib/gprpp/dump_args.h +69 -0
  826. data/src/core/lib/gprpp/env.h +2 -2
  827. data/src/core/lib/gprpp/examine_stack.cc +2 -2
  828. data/src/core/lib/gprpp/examine_stack.h +2 -2
  829. data/src/core/lib/gprpp/fork.cc +1 -2
  830. data/src/core/lib/gprpp/fork.h +2 -2
  831. data/src/core/lib/gprpp/glob.cc +70 -0
  832. data/src/core/lib/gprpp/glob.h +29 -0
  833. data/src/core/lib/gprpp/host_port.cc +6 -4
  834. data/src/core/lib/gprpp/host_port.h +2 -2
  835. data/src/core/lib/gprpp/linux/env.cc +2 -2
  836. data/src/core/lib/gprpp/load_file.cc +4 -3
  837. data/src/core/lib/gprpp/load_file.h +2 -2
  838. data/src/core/lib/gprpp/manual_constructor.h +2 -2
  839. data/src/core/lib/gprpp/match.h +2 -2
  840. data/src/core/lib/gprpp/memory.h +1 -2
  841. data/src/core/lib/gprpp/mpscq.cc +2 -2
  842. data/src/core/lib/gprpp/mpscq.h +5 -4
  843. data/src/core/lib/gprpp/no_destruct.h +2 -2
  844. data/src/core/lib/gprpp/notification.h +2 -2
  845. data/src/core/lib/gprpp/orphanable.h +7 -4
  846. data/src/core/lib/gprpp/overload.h +2 -2
  847. data/src/core/lib/gprpp/per_cpu.cc +2 -3
  848. data/src/core/lib/gprpp/per_cpu.h +1 -2
  849. data/src/core/lib/gprpp/posix/directory_reader.cc +2 -2
  850. data/src/core/lib/gprpp/posix/stat.cc +8 -7
  851. data/src/core/lib/gprpp/posix/thd.cc +18 -19
  852. data/src/core/lib/gprpp/ref_counted.h +40 -28
  853. data/src/core/lib/gprpp/ref_counted_ptr.h +4 -3
  854. data/src/core/lib/gprpp/ref_counted_string.cc +1 -2
  855. data/src/core/lib/gprpp/ref_counted_string.h +2 -2
  856. data/src/core/lib/gprpp/single_set_ptr.h +9 -6
  857. data/src/core/lib/gprpp/sorted_pack.h +2 -2
  858. data/src/core/lib/gprpp/stat.h +2 -2
  859. data/src/core/lib/gprpp/status_helper.cc +14 -33
  860. data/src/core/lib/gprpp/status_helper.h +5 -33
  861. data/src/core/lib/gprpp/strerror.cc +2 -2
  862. data/src/core/lib/gprpp/strerror.h +2 -2
  863. data/src/core/lib/gprpp/sync.h +5 -5
  864. data/src/core/lib/gprpp/table.h +2 -2
  865. data/src/core/lib/gprpp/tchar.cc +2 -2
  866. data/src/core/lib/gprpp/thd.h +7 -7
  867. data/src/core/lib/gprpp/time.cc +9 -10
  868. data/src/core/lib/gprpp/time.h +10 -4
  869. data/src/core/lib/gprpp/time_averaged_stats.cc +2 -2
  870. data/src/core/lib/gprpp/time_util.cc +5 -4
  871. data/src/core/lib/gprpp/time_util.h +1 -2
  872. data/src/core/lib/gprpp/unique_type_name.h +3 -3
  873. data/src/core/lib/gprpp/uuid_v4.cc +37 -0
  874. data/src/core/{resolver/xds/xds_resolver_trace.h → lib/gprpp/uuid_v4.h} +13 -7
  875. data/src/core/lib/gprpp/validation_errors.cc +12 -3
  876. data/src/core/lib/gprpp/validation_errors.h +13 -2
  877. data/src/core/lib/gprpp/windows/stat.cc +6 -5
  878. data/src/core/lib/gprpp/windows/thd.cc +7 -4
  879. data/src/core/lib/gprpp/work_serializer.cc +53 -62
  880. data/src/core/lib/gprpp/work_serializer.h +1 -2
  881. data/src/core/lib/iomgr/buffer_list.cc +5 -4
  882. data/src/core/lib/iomgr/buffer_list.h +1 -2
  883. data/src/core/lib/iomgr/call_combiner.cc +23 -31
  884. data/src/core/lib/iomgr/call_combiner.h +2 -5
  885. data/src/core/lib/iomgr/cfstream_handle.cc +4 -6
  886. data/src/core/lib/iomgr/closure.cc +2 -2
  887. data/src/core/lib/iomgr/closure.h +6 -7
  888. data/src/core/lib/iomgr/combiner.cc +13 -14
  889. data/src/core/lib/iomgr/combiner.h +1 -4
  890. data/src/core/lib/iomgr/endpoint.cc +1 -7
  891. data/src/core/lib/iomgr/endpoint.h +1 -4
  892. data/src/core/lib/iomgr/endpoint_cfstream.cc +26 -46
  893. data/src/core/lib/iomgr/endpoint_pair_posix.cc +6 -5
  894. data/src/core/lib/iomgr/endpoint_pair_windows.cc +15 -15
  895. data/src/core/lib/iomgr/error.cc +16 -24
  896. data/src/core/lib/iomgr/error.h +4 -4
  897. data/src/core/lib/iomgr/ev_apple.cc +3 -5
  898. data/src/core/lib/iomgr/ev_epoll1_linux.cc +58 -56
  899. data/src/core/lib/iomgr/ev_poll_posix.cc +47 -38
  900. data/src/core/lib/iomgr/ev_posix.cc +9 -11
  901. data/src/core/lib/iomgr/ev_posix.h +11 -8
  902. data/src/core/lib/iomgr/event_engine_shims/closure.cc +3 -4
  903. data/src/core/lib/iomgr/event_engine_shims/closure.h +1 -2
  904. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +17 -31
  905. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +1 -2
  906. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +1 -2
  907. data/src/core/lib/iomgr/event_engine_shims/tcp_client.h +1 -2
  908. data/src/core/lib/iomgr/exec_ctx.cc +7 -7
  909. data/src/core/lib/iomgr/exec_ctx.h +7 -5
  910. data/src/core/lib/iomgr/executor.cc +13 -23
  911. data/src/core/lib/iomgr/executor.h +1 -1
  912. data/src/core/lib/iomgr/fork_posix.cc +8 -10
  913. data/src/core/lib/iomgr/fork_windows.cc +3 -1
  914. data/src/core/lib/iomgr/grpc_if_nametoindex.h +2 -2
  915. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +2 -3
  916. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +3 -5
  917. data/src/core/lib/iomgr/internal_errqueue.cc +5 -4
  918. data/src/core/lib/iomgr/iocp_windows.cc +13 -9
  919. data/src/core/lib/iomgr/iocp_windows.h +0 -1
  920. data/src/core/lib/iomgr/iomgr.cc +14 -19
  921. data/src/core/lib/iomgr/iomgr.h +2 -2
  922. data/src/core/lib/iomgr/iomgr_internal.cc +2 -2
  923. data/src/core/lib/iomgr/iomgr_internal.h +2 -2
  924. data/src/core/lib/iomgr/iomgr_windows.cc +4 -2
  925. data/src/core/lib/iomgr/lockfree_event.cc +7 -8
  926. data/src/core/lib/iomgr/lockfree_event.h +1 -2
  927. data/src/core/lib/iomgr/polling_entity.cc +5 -5
  928. data/src/core/lib/iomgr/pollset.cc +2 -2
  929. data/src/core/lib/iomgr/pollset.h +0 -3
  930. data/src/core/lib/iomgr/pollset_set.cc +2 -2
  931. data/src/core/lib/iomgr/pollset_set_windows.cc +2 -2
  932. data/src/core/lib/iomgr/pollset_windows.cc +0 -2
  933. data/src/core/lib/iomgr/pollset_windows.h +0 -1
  934. data/src/core/lib/iomgr/port.h +3 -0
  935. data/src/core/lib/iomgr/python_util.h +1 -2
  936. data/src/core/lib/iomgr/resolve_address.cc +1 -2
  937. data/src/core/lib/iomgr/resolve_address.h +1 -2
  938. data/src/core/lib/iomgr/resolve_address_impl.h +2 -2
  939. data/src/core/lib/iomgr/resolve_address_posix.cc +7 -14
  940. data/src/core/lib/iomgr/resolve_address_posix.h +2 -2
  941. data/src/core/lib/iomgr/resolve_address_windows.cc +1 -1
  942. data/src/core/lib/iomgr/resolve_address_windows.h +2 -2
  943. data/src/core/lib/iomgr/resolved_address.h +2 -2
  944. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +3 -1
  945. data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
  946. data/src/core/lib/iomgr/socket_factory_posix.h +1 -2
  947. data/src/core/lib/iomgr/socket_mutator.cc +2 -3
  948. data/src/core/lib/iomgr/socket_mutator.h +1 -2
  949. data/src/core/lib/iomgr/socket_utils.h +2 -2
  950. data/src/core/lib/iomgr/socket_utils_common_posix.cc +28 -33
  951. data/src/core/lib/iomgr/socket_utils_posix.cc +2 -2
  952. data/src/core/lib/iomgr/socket_utils_posix.h +1 -2
  953. data/src/core/lib/iomgr/socket_windows.cc +8 -9
  954. data/src/core/lib/iomgr/tcp_client.cc +2 -2
  955. data/src/core/lib/iomgr/tcp_client.h +1 -2
  956. data/src/core/lib/iomgr/tcp_client_cfstream.cc +3 -5
  957. data/src/core/lib/iomgr/tcp_client_posix.cc +14 -19
  958. data/src/core/lib/iomgr/tcp_client_windows.cc +33 -14
  959. data/src/core/lib/iomgr/tcp_posix.cc +145 -125
  960. data/src/core/lib/iomgr/tcp_posix.h +0 -2
  961. data/src/core/lib/iomgr/tcp_server.cc +2 -2
  962. data/src/core/lib/iomgr/tcp_server.h +1 -2
  963. data/src/core/lib/iomgr/tcp_server_posix.cc +125 -111
  964. data/src/core/lib/iomgr/tcp_server_utils_posix.h +2 -2
  965. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +10 -12
  966. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +9 -8
  967. data/src/core/lib/iomgr/tcp_server_windows.cc +85 -39
  968. data/src/core/lib/iomgr/tcp_windows.cc +33 -47
  969. data/src/core/lib/iomgr/timer.cc +2 -2
  970. data/src/core/lib/iomgr/timer.h +1 -2
  971. data/src/core/lib/iomgr/timer_generic.cc +20 -23
  972. data/src/core/lib/iomgr/timer_generic.h +0 -1
  973. data/src/core/lib/iomgr/timer_heap.cc +2 -3
  974. data/src/core/lib/iomgr/timer_manager.cc +21 -33
  975. data/src/core/lib/iomgr/timer_manager.h +2 -2
  976. data/src/core/lib/iomgr/unix_sockets_posix.cc +16 -2
  977. data/src/core/lib/iomgr/unix_sockets_posix.h +1 -2
  978. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +3 -1
  979. data/src/core/lib/iomgr/vsock.cc +3 -3
  980. data/src/core/lib/iomgr/vsock.h +1 -2
  981. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +3 -3
  982. data/src/core/lib/matchers/matchers.cc +2 -2
  983. data/src/core/lib/matchers/matchers.h +2 -2
  984. data/src/core/lib/promise/activity.cc +4 -3
  985. data/src/core/lib/promise/activity.h +35 -11
  986. data/src/core/lib/promise/all_ok.h +2 -2
  987. data/src/core/lib/promise/arena_promise.h +2 -2
  988. data/src/core/lib/promise/cancel_callback.h +24 -0
  989. data/src/core/lib/promise/context.h +16 -5
  990. data/src/core/lib/promise/detail/basic_seq.h +1 -2
  991. data/src/core/lib/promise/detail/join_state.h +365 -408
  992. data/src/core/lib/promise/detail/promise_factory.h +2 -2
  993. data/src/core/lib/promise/detail/promise_like.h +15 -8
  994. data/src/core/lib/promise/detail/seq_state.h +1192 -1192
  995. data/src/core/lib/promise/detail/status.h +4 -3
  996. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +2 -2
  997. data/src/core/lib/promise/for_each.h +91 -30
  998. data/src/core/lib/promise/if.h +2 -2
  999. data/src/core/lib/promise/interceptor_list.h +9 -10
  1000. data/src/core/lib/promise/latch.h +17 -17
  1001. data/src/core/lib/promise/loop.h +2 -2
  1002. data/src/core/lib/promise/map.h +19 -2
  1003. data/src/core/lib/promise/observable.h +182 -0
  1004. data/src/core/lib/promise/party.cc +52 -23
  1005. data/src/core/lib/promise/party.h +31 -31
  1006. data/src/core/lib/promise/pipe.h +31 -50
  1007. data/src/core/lib/promise/poll.h +6 -5
  1008. data/src/core/lib/promise/prioritized_race.h +2 -2
  1009. data/src/core/lib/promise/promise.h +3 -2
  1010. data/src/core/lib/promise/race.h +2 -2
  1011. data/src/core/lib/promise/seq.h +2 -2
  1012. data/src/core/lib/promise/sleep.cc +2 -3
  1013. data/src/core/lib/promise/sleep.h +1 -2
  1014. data/src/core/lib/promise/status_flag.h +18 -8
  1015. data/src/core/lib/promise/try_join.h +4 -3
  1016. data/src/core/lib/promise/try_seq.h +4 -3
  1017. data/src/core/lib/resource_quota/api.cc +1 -2
  1018. data/src/core/lib/resource_quota/api.h +1 -2
  1019. data/src/core/lib/resource_quota/arena.cc +57 -81
  1020. data/src/core/lib/resource_quota/arena.h +122 -211
  1021. data/src/core/lib/resource_quota/connection_quota.cc +70 -0
  1022. data/src/core/lib/resource_quota/connection_quota.h +61 -0
  1023. data/src/core/lib/resource_quota/memory_quota.cc +20 -21
  1024. data/src/core/lib/resource_quota/memory_quota.h +6 -7
  1025. data/src/core/lib/resource_quota/periodic_update.cc +3 -3
  1026. data/src/core/lib/resource_quota/periodic_update.h +2 -2
  1027. data/src/core/lib/resource_quota/resource_quota.cc +2 -2
  1028. data/src/core/lib/resource_quota/resource_quota.h +2 -3
  1029. data/src/core/lib/resource_quota/thread_quota.cc +4 -3
  1030. data/src/core/lib/resource_quota/thread_quota.h +2 -2
  1031. data/src/core/lib/security/authorization/audit_logging.cc +6 -6
  1032. data/src/core/lib/security/authorization/audit_logging.h +1 -2
  1033. data/src/core/lib/security/authorization/authorization_engine.h +2 -2
  1034. data/src/core/lib/security/authorization/authorization_policy_provider.h +2 -3
  1035. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +2 -3
  1036. data/src/core/lib/security/authorization/evaluate_args.cc +13 -15
  1037. data/src/core/lib/security/authorization/evaluate_args.h +4 -5
  1038. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +4 -3
  1039. data/src/core/lib/security/authorization/grpc_authorization_engine.h +1 -2
  1040. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +13 -18
  1041. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +8 -9
  1042. data/src/core/lib/security/authorization/matchers.cc +4 -5
  1043. data/src/core/lib/security/authorization/matchers.h +2 -2
  1044. data/src/core/lib/security/authorization/rbac_policy.cc +2 -2
  1045. data/src/core/lib/security/authorization/rbac_policy.h +1 -2
  1046. data/src/core/lib/security/authorization/stdout_logger.cc +4 -3
  1047. data/src/core/lib/security/authorization/stdout_logger.h +1 -2
  1048. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +4 -4
  1049. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +6 -6
  1050. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +2 -2
  1051. data/src/core/lib/security/context/security_context.cc +17 -16
  1052. data/src/core/lib/security/context/security_context.h +33 -10
  1053. data/src/core/lib/security/credentials/alts/alts_credentials.cc +1 -2
  1054. data/src/core/lib/security/credentials/alts/alts_credentials.h +3 -3
  1055. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +4 -3
  1056. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +2 -3
  1057. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +5 -6
  1058. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +4 -5
  1059. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +2 -2
  1060. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +1 -2
  1061. data/src/core/lib/security/credentials/call_creds_util.cc +3 -3
  1062. data/src/core/lib/security/credentials/call_creds_util.h +2 -2
  1063. data/src/core/lib/security/credentials/channel_creds_registry.h +4 -4
  1064. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +7 -5
  1065. data/src/core/lib/security/credentials/composite/composite_credentials.cc +9 -8
  1066. data/src/core/lib/security/credentials/composite/composite_credentials.h +3 -3
  1067. data/src/core/lib/security/credentials/credentials.cc +10 -9
  1068. data/src/core/lib/security/credentials/credentials.h +5 -4
  1069. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +9 -8
  1070. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +4 -4
  1071. data/src/core/lib/security/credentials/external/aws_request_signer.cc +2 -2
  1072. data/src/core/lib/security/credentials/external/aws_request_signer.h +2 -2
  1073. data/src/core/lib/security/credentials/external/external_account_credentials.cc +16 -17
  1074. data/src/core/lib/security/credentials/external/external_account_credentials.h +5 -5
  1075. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +3 -4
  1076. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +2 -2
  1077. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +8 -7
  1078. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +3 -3
  1079. data/src/core/lib/security/credentials/fake/fake_credentials.cc +2 -2
  1080. data/src/core/lib/security/credentials/fake/fake_credentials.h +3 -3
  1081. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +4 -5
  1082. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +19 -18
  1083. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +3 -3
  1084. data/src/core/lib/security/credentials/iam/iam_credentials.cc +5 -5
  1085. data/src/core/lib/security/credentials/iam/iam_credentials.h +3 -3
  1086. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +2 -2
  1087. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +2 -2
  1088. data/src/core/lib/security/credentials/jwt/json_token.cc +27 -23
  1089. data/src/core/lib/security/credentials/jwt/json_token.h +2 -3
  1090. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +10 -8
  1091. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +3 -3
  1092. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +76 -85
  1093. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +2 -3
  1094. data/src/core/lib/security/credentials/local/local_credentials.cc +1 -2
  1095. data/src/core/lib/security/credentials/local/local_credentials.h +3 -3
  1096. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +21 -19
  1097. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +6 -6
  1098. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +9 -10
  1099. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +3 -5
  1100. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +28 -34
  1101. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +6 -4
  1102. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +26 -25
  1103. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +2 -2
  1104. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +2 -2
  1105. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +28 -36
  1106. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +4 -4
  1107. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +3 -3
  1108. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +5 -4
  1109. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +23 -22
  1110. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +1 -0
  1111. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +22 -17
  1112. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +8 -5
  1113. data/src/core/lib/security/credentials/tls/tls_credentials.cc +15 -18
  1114. data/src/core/lib/security/credentials/tls/tls_credentials.h +2 -2
  1115. data/src/core/lib/security/credentials/tls/tls_utils.cc +5 -6
  1116. data/src/core/lib/security/credentials/tls/tls_utils.h +1 -2
  1117. data/src/core/lib/security/credentials/xds/xds_credentials.cc +8 -8
  1118. data/src/core/lib/security/credentials/xds/xds_credentials.h +3 -3
  1119. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +27 -30
  1120. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +2 -2
  1121. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +20 -17
  1122. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +2 -2
  1123. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +6 -5
  1124. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +3 -3
  1125. data/src/core/lib/security/security_connector/load_system_roots.h +4 -2
  1126. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +3 -2
  1127. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +8 -8
  1128. data/src/core/lib/security/security_connector/load_system_roots_supported.h +1 -2
  1129. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +87 -0
  1130. data/src/core/lib/security/security_connector/local/local_security_connector.cc +19 -23
  1131. data/src/core/lib/security/security_connector/local/local_security_connector.h +2 -2
  1132. data/src/core/lib/security/security_connector/security_connector.cc +8 -10
  1133. data/src/core/lib/security/security_connector/security_connector.h +4 -6
  1134. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +23 -25
  1135. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +2 -2
  1136. data/src/core/lib/security/security_connector/ssl_utils.cc +29 -30
  1137. data/src/core/lib/security/security_connector/ssl_utils.h +1 -2
  1138. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +42 -53
  1139. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +3 -3
  1140. data/src/core/lib/security/transport/auth_filters.h +12 -36
  1141. data/src/core/lib/security/transport/client_auth_filter.cc +13 -18
  1142. data/src/core/lib/security/transport/server_auth_filter.cc +10 -13
  1143. data/src/core/lib/security/util/json_util.cc +1 -2
  1144. data/src/core/lib/security/util/json_util.h +1 -1
  1145. data/src/core/lib/slice/percent_encoding.cc +4 -3
  1146. data/src/core/lib/slice/slice.cc +42 -15
  1147. data/src/core/lib/slice/slice.h +5 -5
  1148. data/src/core/lib/slice/slice_buffer.cc +64 -25
  1149. data/src/core/lib/slice/slice_buffer.h +15 -3
  1150. data/src/core/lib/slice/slice_internal.h +10 -3
  1151. data/src/core/lib/slice/slice_refcount.h +3 -6
  1152. data/src/core/lib/slice/slice_string_helpers.cc +3 -3
  1153. data/src/core/lib/slice/slice_string_helpers.h +1 -2
  1154. data/src/core/lib/surface/api_trace.h +2 -5
  1155. data/src/core/lib/surface/byte_buffer.cc +1 -2
  1156. data/src/core/lib/surface/byte_buffer_reader.cc +4 -3
  1157. data/src/core/lib/surface/call.cc +102 -3904
  1158. data/src/core/lib/surface/call.h +159 -91
  1159. data/src/core/lib/surface/call_details.cc +1 -2
  1160. data/src/core/lib/surface/call_log_batch.cc +2 -3
  1161. data/src/core/lib/surface/call_test_only.h +1 -2
  1162. data/src/core/lib/surface/call_utils.cc +276 -0
  1163. data/src/core/lib/surface/call_utils.h +449 -0
  1164. data/src/core/lib/surface/channel.cc +118 -323
  1165. data/src/core/lib/surface/channel.h +92 -109
  1166. data/src/core/lib/surface/channel_create.cc +118 -0
  1167. data/src/core/lib/surface/{builtins.cc → channel_create.h} +22 -16
  1168. data/src/core/lib/surface/channel_init.cc +29 -84
  1169. data/src/core/lib/surface/channel_init.h +45 -102
  1170. data/src/core/lib/surface/channel_stack_type.cc +2 -2
  1171. data/src/core/lib/surface/client_call.cc +419 -0
  1172. data/src/core/lib/surface/client_call.h +180 -0
  1173. data/src/core/lib/surface/completion_queue.cc +45 -51
  1174. data/src/core/lib/surface/completion_queue.h +1 -10
  1175. data/src/core/lib/surface/completion_queue_factory.cc +9 -8
  1176. data/src/core/lib/surface/completion_queue_factory.h +1 -2
  1177. data/src/core/lib/surface/event_string.cc +2 -2
  1178. data/src/core/lib/surface/event_string.h +1 -2
  1179. data/src/core/lib/surface/filter_stack_call.cc +1157 -0
  1180. data/src/core/lib/surface/filter_stack_call.h +369 -0
  1181. data/src/core/lib/surface/init.cc +15 -20
  1182. data/src/core/lib/surface/init_internally.cc +2 -2
  1183. data/src/core/lib/surface/lame_client.cc +13 -41
  1184. data/src/core/lib/surface/lame_client.h +13 -13
  1185. data/src/core/lib/surface/legacy_channel.cc +427 -0
  1186. data/src/core/lib/surface/legacy_channel.h +114 -0
  1187. data/src/core/lib/surface/metadata_array.cc +1 -2
  1188. data/src/core/lib/surface/server_call.cc +222 -0
  1189. data/src/core/lib/surface/server_call.h +167 -0
  1190. data/src/core/lib/surface/validate_metadata.cc +1 -2
  1191. data/src/core/lib/surface/validate_metadata.h +3 -3
  1192. data/src/core/lib/surface/version.cc +3 -4
  1193. data/src/core/lib/transport/bdp_estimator.cc +7 -7
  1194. data/src/core/lib/transport/bdp_estimator.h +6 -8
  1195. data/src/core/lib/transport/{call_size_estimator.cc → call_arena_allocator.cc} +3 -3
  1196. data/src/core/lib/transport/{call_size_estimator.h → call_arena_allocator.h} +29 -6
  1197. data/src/core/lib/transport/call_destination.h +76 -0
  1198. data/src/core/lib/transport/call_filters.cc +166 -33
  1199. data/src/core/lib/transport/call_filters.h +517 -62
  1200. data/src/core/lib/transport/call_final_info.cc +2 -2
  1201. data/src/core/lib/transport/call_final_info.h +1 -2
  1202. data/src/core/lib/transport/call_spine.cc +17 -19
  1203. data/src/core/lib/transport/call_spine.h +242 -214
  1204. data/src/core/lib/transport/connectivity_state.cc +9 -12
  1205. data/src/core/lib/transport/connectivity_state.h +1 -4
  1206. data/src/core/lib/transport/error_utils.cc +1 -2
  1207. data/src/core/lib/transport/error_utils.h +1 -2
  1208. data/src/core/lib/transport/interception_chain.cc +155 -0
  1209. data/src/core/lib/transport/interception_chain.h +236 -0
  1210. data/src/core/lib/transport/message.cc +1 -2
  1211. data/src/core/lib/transport/metadata.cc +3 -3
  1212. data/src/core/lib/transport/metadata_batch.cc +68 -7
  1213. data/src/core/lib/transport/metadata_batch.h +55 -21
  1214. data/src/core/lib/transport/metadata_compression_traits.h +2 -2
  1215. data/src/core/lib/transport/metadata_info.cc +55 -0
  1216. data/src/core/lib/transport/metadata_info.h +85 -0
  1217. data/src/core/lib/transport/parsed_metadata.cc +2 -2
  1218. data/src/core/lib/transport/parsed_metadata.h +1 -2
  1219. data/src/core/lib/transport/simple_slice_based_metadata.h +2 -2
  1220. data/src/core/lib/transport/status_conversion.cc +2 -2
  1221. data/src/core/lib/transport/status_conversion.h +1 -2
  1222. data/src/core/lib/transport/timeout_encoding.cc +5 -5
  1223. data/src/core/lib/transport/timeout_encoding.h +2 -2
  1224. data/src/core/lib/transport/transport.cc +4 -8
  1225. data/src/core/lib/transport/transport.h +80 -74
  1226. data/src/core/lib/transport/transport_op_string.cc +1 -10
  1227. data/src/core/lib/uri/uri_parser.cc +3 -3
  1228. data/src/core/lib/uri/uri_parser.h +2 -2
  1229. data/src/core/load_balancing/address_filtering.cc +3 -3
  1230. data/src/core/load_balancing/address_filtering.h +3 -3
  1231. data/src/core/load_balancing/backend_metric_data.h +2 -2
  1232. data/src/core/{client_channel/backend_metric.cc → load_balancing/backend_metric_parser.cc} +3 -3
  1233. data/src/core/{client_channel/backend_metric.h → load_balancing/backend_metric_parser.h} +5 -5
  1234. data/src/core/load_balancing/child_policy_handler.cc +15 -15
  1235. data/src/core/load_balancing/child_policy_handler.h +2 -2
  1236. data/src/core/load_balancing/delegating_helper.h +10 -3
  1237. data/src/core/load_balancing/endpoint_list.cc +12 -14
  1238. data/src/core/load_balancing/endpoint_list.h +16 -10
  1239. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +29 -30
  1240. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +22 -8
  1241. data/src/core/load_balancing/grpclb/grpclb.cc +89 -98
  1242. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +3 -3
  1243. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.h +1 -2
  1244. data/src/core/load_balancing/grpclb/grpclb_client_stats.cc +1 -2
  1245. data/src/core/load_balancing/grpclb/grpclb_client_stats.h +2 -3
  1246. data/src/core/load_balancing/grpclb/load_balancer_api.cc +4 -6
  1247. data/src/core/load_balancing/grpclb/load_balancer_api.h +2 -3
  1248. data/src/core/load_balancing/health_check_client.cc +20 -24
  1249. data/src/core/load_balancing/health_check_client.h +2 -2
  1250. data/src/core/load_balancing/health_check_client_internal.h +5 -7
  1251. data/src/core/load_balancing/lb_policy.cc +7 -10
  1252. data/src/core/load_balancing/lb_policy.h +32 -8
  1253. data/src/core/load_balancing/lb_policy_factory.h +3 -3
  1254. data/src/core/load_balancing/lb_policy_registry.cc +5 -6
  1255. data/src/core/load_balancing/lb_policy_registry.h +5 -5
  1256. data/src/core/load_balancing/oob_backend_metric.cc +12 -15
  1257. data/src/core/load_balancing/oob_backend_metric.h +3 -3
  1258. data/src/core/load_balancing/oob_backend_metric_internal.h +7 -8
  1259. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +65 -67
  1260. data/src/core/load_balancing/outlier_detection/outlier_detection.h +5 -5
  1261. data/src/core/load_balancing/pick_first/pick_first.cc +1186 -279
  1262. data/src/core/load_balancing/priority/priority.cc +49 -45
  1263. data/src/core/load_balancing/ring_hash/ring_hash.cc +53 -38
  1264. data/src/core/load_balancing/ring_hash/ring_hash.h +6 -6
  1265. data/src/core/load_balancing/rls/rls.cc +280 -150
  1266. data/src/core/{lib/iomgr/ev_windows.cc → load_balancing/rls/rls.h} +8 -12
  1267. data/src/core/load_balancing/round_robin/round_robin.cc +50 -497
  1268. data/src/core/load_balancing/subchannel_interface.h +4 -4
  1269. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +4 -4
  1270. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h +3 -3
  1271. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +162 -936
  1272. data/src/core/load_balancing/weighted_target/weighted_target.cc +41 -41
  1273. data/src/core/load_balancing/weighted_target/weighted_target.h +28 -0
  1274. data/src/core/load_balancing/xds/cds.cc +33 -36
  1275. data/src/core/load_balancing/xds/xds_cluster_impl.cc +128 -84
  1276. data/src/core/load_balancing/xds/xds_cluster_manager.cc +23 -26
  1277. data/src/core/load_balancing/xds/xds_override_host.cc +61 -62
  1278. data/src/core/load_balancing/xds/xds_override_host.h +6 -6
  1279. data/src/core/load_balancing/xds/xds_wrr_locality.cc +21 -23
  1280. data/src/core/plugin_registry/grpc_plugin_registry.cc +27 -9
  1281. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +1 -3
  1282. data/src/core/resolver/binder/binder_resolver.cc +15 -7
  1283. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +16 -15
  1284. data/src/core/resolver/dns/c_ares/dns_resolver_ares.h +2 -2
  1285. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h +3 -3
  1286. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +6 -5
  1287. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +39 -38
  1288. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +21 -28
  1289. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +2 -7
  1290. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +1 -1
  1291. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +2 -2
  1292. data/src/core/resolver/dns/dns_resolver_plugin.cc +10 -10
  1293. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +11 -16
  1294. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h +6 -4
  1295. data/src/core/resolver/dns/event_engine/service_config_helper.cc +7 -7
  1296. data/src/core/resolver/dns/event_engine/service_config_helper.h +2 -2
  1297. data/src/core/resolver/dns/native/dns_resolver.cc +14 -16
  1298. data/src/core/resolver/endpoint_addresses.cc +5 -5
  1299. data/src/core/resolver/endpoint_addresses.h +6 -6
  1300. data/src/core/resolver/fake/fake_resolver.cc +7 -7
  1301. data/src/core/resolver/fake/fake_resolver.h +3 -4
  1302. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +31 -27
  1303. data/src/core/resolver/polling_resolver.cc +35 -40
  1304. data/src/core/resolver/polling_resolver.h +1 -2
  1305. data/src/core/resolver/resolver.cc +3 -7
  1306. data/src/core/resolver/resolver.h +2 -4
  1307. data/src/core/resolver/resolver_factory.h +3 -3
  1308. data/src/core/resolver/resolver_registry.cc +11 -13
  1309. data/src/core/resolver/resolver_registry.h +5 -5
  1310. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +11 -12
  1311. data/src/core/resolver/xds/xds_dependency_manager.cc +41 -36
  1312. data/src/core/resolver/xds/xds_dependency_manager.h +12 -12
  1313. data/src/core/resolver/xds/xds_resolver.cc +49 -55
  1314. data/src/core/resolver/xds/xds_resolver_attributes.h +3 -3
  1315. data/src/core/{lib/surface → server}/server.cc +313 -446
  1316. data/src/core/{lib/surface → server}/server.h +48 -27
  1317. data/src/core/{lib/channel → server}/server_call_tracer_filter.cc +16 -18
  1318. data/src/core/{lib/surface/builtins.h → server/server_call_tracer_filter.h} +7 -5
  1319. data/src/core/{ext/filters/server_config_selector → server}/server_config_selector.h +6 -6
  1320. data/src/core/{ext/filters/server_config_selector → server}/server_config_selector_filter.cc +40 -40
  1321. data/src/core/{ext/filters/server_config_selector → server}/server_config_selector_filter.h +3 -3
  1322. data/src/core/server/server_interface.h +45 -0
  1323. data/src/core/{ext/xds → server}/xds_channel_stack_modifier.cc +4 -4
  1324. data/src/core/{ext/xds → server}/xds_channel_stack_modifier.h +7 -7
  1325. data/src/core/{ext/xds → server}/xds_server_config_fetcher.cc +44 -45
  1326. data/src/core/service_config/service_config.h +2 -3
  1327. data/src/core/service_config/service_config_call_data.h +15 -13
  1328. data/src/core/{client_channel → service_config}/service_config_channel_arg_filter.cc +13 -12
  1329. data/src/core/service_config/service_config_impl.cc +7 -7
  1330. data/src/core/service_config/service_config_impl.h +4 -4
  1331. data/src/core/service_config/service_config_parser.cc +4 -8
  1332. data/src/core/service_config/service_config_parser.h +4 -4
  1333. data/src/core/{lib/channel → telemetry}/call_tracer.cc +28 -39
  1334. data/src/core/{lib/channel → telemetry}/call_tracer.h +47 -23
  1335. data/src/core/{lib/debug → telemetry}/histogram_view.cc +2 -2
  1336. data/src/core/{lib/debug → telemetry}/histogram_view.h +5 -5
  1337. data/src/core/telemetry/metrics.cc +178 -0
  1338. data/src/core/telemetry/metrics.h +562 -0
  1339. data/src/core/{lib/debug → telemetry}/stats.cc +3 -3
  1340. data/src/core/{lib/debug → telemetry}/stats.h +7 -7
  1341. data/src/core/{lib/debug → telemetry}/stats_data.cc +272 -29
  1342. data/src/core/{lib/debug → telemetry}/stats_data.h +182 -6
  1343. data/src/core/{lib/channel → telemetry}/tcp_tracer.h +9 -5
  1344. data/src/core/tsi/alts/crypt/aes_gcm.cc +1 -2
  1345. data/src/core/tsi/alts/crypt/gsec.cc +1 -2
  1346. data/src/core/tsi/alts/crypt/gsec.h +1 -2
  1347. data/src/core/tsi/alts/frame_protector/alts_counter.cc +1 -2
  1348. data/src/core/tsi/alts/frame_protector/alts_counter.h +1 -2
  1349. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +1 -2
  1350. data/src/core/tsi/alts/frame_protector/alts_crypter.h +1 -2
  1351. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +13 -15
  1352. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +2 -2
  1353. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +1 -2
  1354. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +1 -2
  1355. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +1 -2
  1356. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +1 -2
  1357. data/src/core/tsi/alts/frame_protector/frame_handler.cc +1 -2
  1358. data/src/core/tsi/alts/frame_protector/frame_handler.h +2 -2
  1359. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +69 -68
  1360. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +1 -2
  1361. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +5 -4
  1362. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +1 -2
  1363. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +55 -53
  1364. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +1 -2
  1365. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +7 -5
  1366. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +1 -2
  1367. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +4 -3
  1368. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +1 -2
  1369. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +10 -8
  1370. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +2 -2
  1371. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +6 -5
  1372. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +2 -2
  1373. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +1 -2
  1374. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +10 -6
  1375. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +1 -2
  1376. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +2 -2
  1377. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +9 -7
  1378. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +2 -2
  1379. data/src/core/tsi/fake_transport_security.cc +20 -21
  1380. data/src/core/tsi/local_transport_security.cc +7 -7
  1381. data/src/core/tsi/local_transport_security.h +1 -2
  1382. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +7 -6
  1383. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +1 -2
  1384. data/src/core/tsi/ssl/session_cache/ssl_session.h +1 -2
  1385. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +15 -14
  1386. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +1 -2
  1387. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +3 -4
  1388. data/src/core/tsi/ssl_transport_security.cc +286 -162
  1389. data/src/core/tsi/ssl_transport_security.h +1 -2
  1390. data/src/core/tsi/ssl_transport_security_utils.cc +208 -24
  1391. data/src/core/tsi/ssl_transport_security_utils.h +39 -2
  1392. data/src/core/tsi/ssl_types.h +2 -2
  1393. data/src/core/tsi/transport_security.cc +1 -6
  1394. data/src/core/tsi/transport_security.h +2 -4
  1395. data/src/core/tsi/transport_security_grpc.cc +2 -2
  1396. data/src/core/tsi/transport_security_grpc.h +1 -2
  1397. data/src/core/tsi/transport_security_interface.h +2 -6
  1398. data/src/core/{lib/gpr → util}/alloc.cc +3 -1
  1399. data/src/core/{lib/gpr → util}/alloc.h +3 -3
  1400. data/src/core/{lib/gpr → util}/android/log.cc +0 -19
  1401. data/src/core/{lib/gpr → util}/atm.cc +1 -1
  1402. data/src/core/{ext/gcp/metadata_query.cc → util/gcp_metadata_query.cc} +26 -26
  1403. data/src/core/{ext/gcp/metadata_query.h → util/gcp_metadata_query.h} +9 -9
  1404. data/src/core/{lib/http → util/http_client}/format_request.cc +2 -2
  1405. data/src/core/{lib/http → util/http_client}/format_request.h +4 -4
  1406. data/src/core/{lib/http → util/http_client}/httpcli.cc +12 -13
  1407. data/src/core/{lib/http → util/http_client}/httpcli.h +5 -5
  1408. data/src/core/{lib/http → util/http_client}/httpcli_security_connector.cc +10 -10
  1409. data/src/core/{lib/http → util/http_client}/httpcli_ssl_credentials.h +3 -3
  1410. data/src/core/{lib/http → util/http_client}/parser.cc +6 -7
  1411. data/src/core/{lib/http → util/http_client}/parser.h +3 -5
  1412. data/src/core/{lib → util}/json/json.h +3 -3
  1413. data/src/core/{lib → util}/json/json_args.h +3 -3
  1414. data/src/core/{lib → util}/json/json_channel_args.h +4 -4
  1415. data/src/core/{lib → util}/json/json_object_loader.cc +1 -1
  1416. data/src/core/{lib → util}/json/json_object_loader.h +5 -5
  1417. data/src/core/{lib → util}/json/json_reader.cc +4 -3
  1418. data/src/core/{lib → util}/json/json_reader.h +4 -4
  1419. data/src/core/{lib → util}/json/json_util.cc +3 -3
  1420. data/src/core/{lib → util}/json/json_util.h +4 -4
  1421. data/src/core/{lib → util}/json/json_writer.cc +1 -1
  1422. data/src/core/{lib → util}/json/json_writer.h +4 -4
  1423. data/src/core/{lib/gpr → util}/linux/log.cc +0 -45
  1424. data/src/core/util/log.cc +167 -0
  1425. data/src/core/{lib/gpr → util}/msys/tmpfile.cc +2 -2
  1426. data/src/core/{lib/gpr → util}/posix/cpu.cc +1 -1
  1427. data/src/core/{lib/gpr → util}/posix/log.cc +0 -42
  1428. data/src/core/{lib/gpr → util}/posix/sync.cc +25 -23
  1429. data/src/core/{lib/gpr → util}/posix/time.cc +10 -67
  1430. data/src/core/{lib/gpr → util}/posix/tmpfile.cc +5 -3
  1431. data/src/core/{lib/gpr → util}/spinlock.h +3 -3
  1432. data/src/core/{lib/gpr → util}/string.cc +2 -2
  1433. data/src/core/{lib/gpr → util}/string.h +3 -3
  1434. data/src/core/{lib/gpr → util}/sync.cc +5 -3
  1435. data/src/core/{lib/gpr → util}/time.cc +10 -8
  1436. data/src/core/{lib/gpr → util}/time_precise.cc +1 -1
  1437. data/src/core/{lib/gpr → util}/time_precise.h +3 -3
  1438. data/src/core/{lib/gpr → util}/tmpfile.h +3 -3
  1439. data/src/core/{lib/gpr → util}/useful.h +3 -3
  1440. data/src/core/{lib/gpr → util}/windows/log.cc +1 -44
  1441. data/src/core/{lib/gpr → util}/windows/string.cc +1 -1
  1442. data/src/core/{lib/gpr → util}/windows/string_util.cc +1 -1
  1443. data/src/core/{lib/gpr → util}/windows/sync.cc +3 -1
  1444. data/src/core/{lib/gpr → util}/windows/time.cc +5 -2
  1445. data/src/core/{lib/gpr → util}/windows/tmpfile.cc +1 -1
  1446. data/src/core/{ext/xds → xds/grpc}/certificate_provider_store.cc +5 -6
  1447. data/src/core/{ext/xds → xds/grpc}/certificate_provider_store.h +11 -11
  1448. data/src/core/{ext/xds → xds/grpc}/file_watcher_certificate_provider_factory.cc +5 -6
  1449. data/src/core/{ext/xds → xds/grpc}/file_watcher_certificate_provider_factory.h +9 -10
  1450. data/src/core/{ext/xds → xds/grpc}/upb_utils.h +5 -5
  1451. data/src/core/{ext/xds → xds/grpc}/xds_audit_logger_registry.cc +6 -5
  1452. data/src/core/{ext/xds → xds/grpc}/xds_audit_logger_registry.h +8 -8
  1453. data/src/core/{ext/xds → xds/grpc}/xds_bootstrap_grpc.cc +44 -13
  1454. data/src/core/{ext/xds → xds/grpc}/xds_bootstrap_grpc.h +36 -21
  1455. data/src/core/{ext/xds → xds/grpc}/xds_certificate_provider.cc +7 -7
  1456. data/src/core/{ext/xds → xds/grpc}/xds_certificate_provider.h +6 -7
  1457. data/src/core/{ext/xds → xds/grpc}/xds_client_grpc.cc +218 -72
  1458. data/src/core/{ext/xds → xds/grpc}/xds_client_grpc.h +31 -18
  1459. data/src/core/{ext/xds → xds/grpc}/xds_cluster.cc +31 -23
  1460. data/src/core/{ext/xds → xds/grpc}/xds_cluster.h +17 -15
  1461. data/src/core/{ext/xds → xds/grpc}/xds_cluster_specifier_plugin.cc +6 -6
  1462. data/src/core/{ext/xds → xds/grpc}/xds_cluster_specifier_plugin.h +9 -9
  1463. data/src/core/{ext/xds → xds/grpc}/xds_common_types.cc +6 -7
  1464. data/src/core/{ext/xds → xds/grpc}/xds_common_types.h +7 -7
  1465. data/src/core/{ext/xds → xds/grpc}/xds_endpoint.cc +14 -14
  1466. data/src/core/{ext/xds → xds/grpc}/xds_endpoint.h +11 -11
  1467. data/src/core/{ext/xds → xds/grpc}/xds_health_status.cc +3 -3
  1468. data/src/core/{ext/xds → xds/grpc}/xds_health_status.h +7 -7
  1469. data/src/core/{ext/xds → xds/grpc}/xds_http_fault_filter.cc +6 -7
  1470. data/src/core/{ext/xds → xds/grpc}/xds_http_fault_filter.h +9 -9
  1471. data/src/core/{ext/xds → xds/grpc}/xds_http_filters.cc +8 -9
  1472. data/src/core/{ext/xds → xds/grpc}/xds_http_filters.h +11 -11
  1473. data/src/core/{ext/xds → xds/grpc}/xds_http_rbac_filter.cc +9 -10
  1474. data/src/core/{ext/xds → xds/grpc}/xds_http_rbac_filter.h +9 -9
  1475. data/src/core/{ext/xds → xds/grpc}/xds_http_stateful_session_filter.cc +7 -8
  1476. data/src/core/{ext/xds → xds/grpc}/xds_http_stateful_session_filter.h +9 -9
  1477. data/src/core/{ext/xds → xds/grpc}/xds_lb_policy_registry.cc +8 -9
  1478. data/src/core/{ext/xds → xds/grpc}/xds_lb_policy_registry.h +8 -8
  1479. data/src/core/{ext/xds → xds/grpc}/xds_listener.cc +12 -14
  1480. data/src/core/{ext/xds → xds/grpc}/xds_listener.h +13 -13
  1481. data/src/core/{ext/xds → xds/grpc}/xds_route_config.cc +23 -24
  1482. data/src/core/{ext/xds → xds/grpc}/xds_route_config.h +12 -12
  1483. data/src/core/{ext/xds → xds/grpc}/xds_routing.cc +6 -6
  1484. data/src/core/{ext/xds → xds/grpc}/xds_routing.h +9 -9
  1485. data/src/core/{ext/xds → xds/grpc}/xds_transport_grpc.cc +31 -46
  1486. data/src/core/{ext/xds → xds/grpc}/xds_transport_grpc.h +12 -13
  1487. data/src/core/{ext/xds → xds/xds_client}/xds_api.cc +9 -14
  1488. data/src/core/{ext/xds → xds/xds_client}/xds_api.h +8 -8
  1489. data/src/core/{ext/xds → xds/xds_client}/xds_bootstrap.cc +4 -4
  1490. data/src/core/{ext/xds → xds/xds_client}/xds_bootstrap.h +8 -10
  1491. data/src/core/{ext/xds → xds/xds_client}/xds_channel_args.h +3 -3
  1492. data/src/core/{ext/xds → xds/xds_client}/xds_client.cc +337 -159
  1493. data/src/core/{ext/xds → xds/xds_client}/xds_client.h +50 -21
  1494. data/src/core/{ext/xds → xds/xds_client}/xds_client_stats.cc +23 -22
  1495. data/src/core/{ext/xds → xds/xds_client}/xds_client_stats.h +21 -14
  1496. data/src/core/xds/xds_client/xds_metrics.h +41 -0
  1497. data/src/core/{ext/xds → xds/xds_client}/xds_resource_type.h +6 -6
  1498. data/src/core/{ext/xds → xds/xds_client}/xds_resource_type_impl.h +7 -7
  1499. data/src/core/{ext/xds → xds/xds_client}/xds_transport.h +6 -6
  1500. data/src/ruby/bin/math_pb.rb +1 -22
  1501. data/src/ruby/ext/grpc/extconf.rb +0 -3
  1502. data/src/ruby/ext/grpc/rb_call.c +8 -1
  1503. data/src/ruby/ext/grpc/rb_call_credentials.c +1 -0
  1504. data/src/ruby/ext/grpc/rb_call_credentials.h +1 -0
  1505. data/src/ruby/ext/grpc/rb_channel.c +1 -0
  1506. data/src/ruby/ext/grpc/rb_channel_credentials.c +1 -0
  1507. data/src/ruby/ext/grpc/rb_completion_queue.c +15 -32
  1508. data/src/ruby/ext/grpc/rb_completion_queue.h +7 -1
  1509. data/src/ruby/ext/grpc/rb_grpc.c +1 -0
  1510. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +130 -132
  1511. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +198 -200
  1512. data/src/ruby/ext/grpc/rb_server.c +40 -22
  1513. data/src/ruby/ext/grpc/rb_server_credentials.c +1 -0
  1514. data/src/ruby/ext/grpc/rb_server_credentials.h +1 -0
  1515. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +1 -0
  1516. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +1 -0
  1517. data/src/ruby/ext/grpc/rb_xds_server_credentials.h +1 -0
  1518. data/src/ruby/lib/grpc/generic/active_call.rb +8 -2
  1519. data/src/ruby/lib/grpc/version.rb +1 -1
  1520. data/src/ruby/pb/grpc/health/v1/health_pb.rb +1 -22
  1521. data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +5 -5
  1522. data/src/ruby/pb/grpc/testing/metrics_pb.rb +10 -19
  1523. data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +5 -5
  1524. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +1 -22
  1525. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +1 -22
  1526. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -22
  1527. data/src/ruby/spec/generic/rpc_server_spec.rb +25 -0
  1528. data/third_party/abseil-cpp/absl/debugging/internal/examine_stack.cc +320 -0
  1529. data/third_party/abseil-cpp/absl/debugging/internal/examine_stack.h +64 -0
  1530. data/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +93 -0
  1531. data/third_party/abseil-cpp/absl/log/check.h +209 -0
  1532. data/third_party/abseil-cpp/absl/log/globals.cc +178 -0
  1533. data/third_party/abseil-cpp/absl/log/globals.h +218 -0
  1534. data/third_party/abseil-cpp/absl/log/internal/append_truncated.h +47 -0
  1535. data/third_party/abseil-cpp/absl/log/internal/check_impl.h +150 -0
  1536. data/third_party/abseil-cpp/absl/log/internal/check_op.cc +118 -0
  1537. data/third_party/abseil-cpp/absl/log/internal/check_op.h +420 -0
  1538. data/third_party/abseil-cpp/absl/log/internal/conditions.cc +83 -0
  1539. data/third_party/abseil-cpp/absl/log/internal/conditions.h +239 -0
  1540. data/third_party/abseil-cpp/absl/log/internal/config.h +45 -0
  1541. data/third_party/abseil-cpp/absl/log/internal/fnmatch.cc +73 -0
  1542. data/third_party/abseil-cpp/absl/log/internal/fnmatch.h +35 -0
  1543. data/third_party/abseil-cpp/absl/log/internal/globals.cc +145 -0
  1544. data/third_party/abseil-cpp/absl/log/internal/globals.h +101 -0
  1545. data/third_party/abseil-cpp/absl/log/internal/log_format.cc +205 -0
  1546. data/third_party/abseil-cpp/absl/log/internal/log_format.h +78 -0
  1547. data/third_party/abseil-cpp/absl/log/internal/log_impl.h +282 -0
  1548. data/third_party/abseil-cpp/absl/log/internal/log_message.cc +633 -0
  1549. data/third_party/abseil-cpp/absl/log/internal/log_message.h +375 -0
  1550. data/third_party/abseil-cpp/absl/log/internal/log_sink_set.cc +296 -0
  1551. data/third_party/abseil-cpp/absl/log/internal/log_sink_set.h +54 -0
  1552. data/third_party/abseil-cpp/absl/log/internal/nullguard.cc +35 -0
  1553. data/third_party/abseil-cpp/absl/log/internal/nullguard.h +88 -0
  1554. data/third_party/abseil-cpp/absl/log/internal/nullstream.h +136 -0
  1555. data/third_party/abseil-cpp/absl/log/internal/proto.cc +220 -0
  1556. data/third_party/abseil-cpp/absl/log/internal/proto.h +288 -0
  1557. data/third_party/abseil-cpp/absl/log/internal/strip.h +72 -0
  1558. data/third_party/abseil-cpp/absl/log/internal/vlog_config.cc +340 -0
  1559. data/third_party/abseil-cpp/absl/log/internal/vlog_config.h +163 -0
  1560. data/third_party/abseil-cpp/absl/log/internal/voidify.h +44 -0
  1561. data/third_party/abseil-cpp/absl/log/log.h +361 -0
  1562. data/third_party/abseil-cpp/absl/log/log_entry.cc +41 -0
  1563. data/third_party/abseil-cpp/absl/log/log_entry.h +221 -0
  1564. data/{src/core/lib/channel/channel_stack_trace.cc → third_party/abseil-cpp/absl/log/log_sink.cc} +9 -5
  1565. data/third_party/abseil-cpp/absl/log/log_sink.h +64 -0
  1566. data/third_party/abseil-cpp/absl/log/log_sink_registry.h +61 -0
  1567. data/third_party/abseil-cpp/absl/log/vlog_is_on.h +72 -0
  1568. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +1 -7
  1569. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.c +50 -39
  1570. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +4 -0
  1571. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +15 -20
  1572. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +25 -10
  1573. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +0 -13
  1574. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +3 -2
  1575. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +1 -1
  1576. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +19 -15
  1577. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_des.c +63 -94
  1578. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +7 -3
  1579. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +20 -28
  1580. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +9 -4
  1581. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +2 -2
  1582. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +66 -41
  1583. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +7 -7
  1584. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +1 -1
  1585. data/third_party/boringssl-with-bazel/src/crypto/des/des.c +45 -32
  1586. data/third_party/boringssl-with-bazel/src/crypto/des/internal.h +24 -0
  1587. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +1 -0
  1588. data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +1497 -0
  1589. data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +58 -0
  1590. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +36 -20
  1591. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +3 -4
  1592. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +2 -0
  1593. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +81 -60
  1594. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +41 -120
  1595. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +13 -13
  1596. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +7 -0
  1597. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.c +137 -0
  1598. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.c +120 -0
  1599. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +30 -0
  1600. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +3 -4
  1601. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +30 -0
  1602. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +1 -4
  1603. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +30 -0
  1604. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +1 -4
  1605. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +6 -7
  1606. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +5 -0
  1607. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c +1 -1
  1608. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +3 -3
  1609. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c +1 -1
  1610. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +46 -2
  1611. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +8 -5
  1612. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +33 -23
  1613. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +1 -1
  1614. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c +2 -2
  1615. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +14 -7
  1616. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c +2 -1
  1617. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +0 -3
  1618. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +11 -7
  1619. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +5 -1
  1620. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +3 -6
  1621. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.h +2 -1
  1622. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +11 -11
  1623. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +22 -8
  1624. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c +3 -6
  1625. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +78 -29
  1626. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +4 -4
  1627. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +3 -3
  1628. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +10 -4
  1629. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +7 -0
  1630. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +2 -0
  1631. data/third_party/boringssl-with-bazel/src/crypto/internal.h +52 -21
  1632. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +1 -1
  1633. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +1 -1
  1634. data/third_party/boringssl-with-bazel/src/crypto/mem.c +18 -9
  1635. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +18 -17
  1636. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +44 -41
  1637. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +13 -12
  1638. data/third_party/boringssl-with-bazel/src/crypto/spx/spx.c +7 -6
  1639. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +26 -33
  1640. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +1 -1
  1641. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +8 -5
  1642. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +5 -1
  1643. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c +9 -4
  1644. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c +2 -2
  1645. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c +1 -1
  1646. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c +2 -0
  1647. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c +40 -61
  1648. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +49 -16
  1649. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +24 -17
  1650. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +51 -78
  1651. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +12 -29
  1652. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +13 -2
  1653. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +2 -2
  1654. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +1 -6
  1655. data/third_party/boringssl-with-bazel/{err_data.c → src/gen/crypto/err_data.c} +487 -485
  1656. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +10 -10
  1657. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +10 -2
  1658. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +88 -45
  1659. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +12 -4
  1660. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +4 -0
  1661. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +17 -1
  1662. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +10 -3
  1663. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +13 -0
  1664. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +25 -14
  1665. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +1 -0
  1666. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +15 -3
  1667. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +125 -0
  1668. data/third_party/boringssl-with-bazel/src/{crypto/spx/internal.h → include/openssl/experimental/spx.h} +24 -13
  1669. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +2 -2
  1670. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +63 -53
  1671. data/third_party/boringssl-with-bazel/src/include/openssl/posix_time.h +6 -0
  1672. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +19 -10
  1673. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +19 -10
  1674. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +14 -0
  1675. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +291 -73
  1676. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +10 -3
  1677. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +13 -10
  1678. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +2 -2
  1679. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +2927 -2394
  1680. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +1 -1
  1681. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +5 -5
  1682. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +3 -9
  1683. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +43 -43
  1684. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +1 -1
  1685. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +17 -7
  1686. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +67 -15
  1687. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +143 -113
  1688. data/third_party/boringssl-with-bazel/src/ssl/internal.h +229 -175
  1689. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +1 -1
  1690. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +0 -1
  1691. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +66 -385
  1692. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +21 -19
  1693. data/third_party/boringssl-with-bazel/src/ssl/ssl_credential.cc +423 -0
  1694. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +2 -2
  1695. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +1 -1
  1696. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +70 -54
  1697. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +59 -75
  1698. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +6 -14
  1699. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +48 -116
  1700. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +19 -26
  1701. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +36 -3
  1702. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +53 -18
  1703. data/third_party/upb/upb/base/descriptor_constants.h +29 -2
  1704. data/third_party/upb/upb/{wire/internal/swap.h → base/internal/endian.h} +12 -11
  1705. data/third_party/upb/upb/base/status.h +1 -1
  1706. data/third_party/upb/upb/base/status.hpp +5 -1
  1707. data/third_party/upb/upb/base/string_view.h +7 -5
  1708. data/third_party/upb/upb/base/upcast.h +29 -0
  1709. data/third_party/upb/upb/generated_code_support.h +2 -1
  1710. data/third_party/upb/upb/json/decode.c +103 -53
  1711. data/third_party/upb/upb/json/decode.h +3 -26
  1712. data/third_party/upb/upb/json/encode.c +3 -26
  1713. data/third_party/upb/upb/json/encode.h +3 -26
  1714. data/third_party/upb/upb/mem/arena.c +233 -106
  1715. data/third_party/upb/upb/mem/arena.h +14 -66
  1716. data/third_party/upb/upb/mem/arena.hpp +8 -4
  1717. data/third_party/upb/upb/mem/internal/arena.h +76 -58
  1718. data/third_party/upb/upb/message/accessors.c +19 -46
  1719. data/third_party/upb/upb/message/accessors.h +208 -123
  1720. data/third_party/upb/upb/message/array.c +55 -83
  1721. data/third_party/upb/upb/message/array.h +18 -30
  1722. data/third_party/upb/upb/message/compat.c +39 -0
  1723. data/third_party/upb/upb/message/compat.h +41 -0
  1724. data/third_party/upb/upb/message/copy.c +322 -0
  1725. data/third_party/upb/upb/message/copy.h +56 -0
  1726. data/third_party/upb/upb/message/internal/accessors.h +178 -178
  1727. data/third_party/upb/upb/message/internal/array.h +80 -81
  1728. data/third_party/upb/upb/message/internal/extension.c +63 -0
  1729. data/third_party/upb/upb/message/internal/extension.h +12 -12
  1730. data/third_party/upb/upb/message/internal/map.h +28 -41
  1731. data/third_party/upb/upb/message/internal/map_entry.h +14 -39
  1732. data/third_party/upb/upb/message/internal/map_sorter.h +18 -37
  1733. data/third_party/upb/upb/message/internal/message.c +59 -0
  1734. data/third_party/upb/upb/message/internal/message.h +26 -42
  1735. data/third_party/upb/upb/message/internal/tagged_ptr.h +56 -0
  1736. data/third_party/upb/upb/message/internal/types.h +7 -12
  1737. data/third_party/upb/upb/message/map.c +3 -26
  1738. data/third_party/upb/upb/message/map.h +5 -33
  1739. data/third_party/upb/upb/message/map_gencode_util.h +3 -26
  1740. data/third_party/upb/upb/message/map_sorter.c +22 -34
  1741. data/third_party/upb/upb/message/message.c +28 -104
  1742. data/third_party/upb/upb/message/message.h +4 -8
  1743. data/third_party/upb/upb/message/tagged_ptr.h +14 -31
  1744. data/third_party/upb/upb/message/value.h +3 -5
  1745. data/third_party/upb/upb/mini_descriptor/build_enum.c +20 -11
  1746. data/third_party/upb/upb/mini_descriptor/decode.c +127 -107
  1747. data/third_party/upb/upb/mini_descriptor/decode.h +3 -8
  1748. data/third_party/upb/upb/mini_descriptor/link.c +34 -22
  1749. data/third_party/upb/upb/mini_descriptor/link.h +1 -1
  1750. data/third_party/upb/upb/mini_table/enum.h +4 -6
  1751. data/third_party/upb/upb/mini_table/extension.h +37 -0
  1752. data/third_party/upb/upb/mini_table/extension_registry.c +9 -2
  1753. data/third_party/upb/upb/mini_table/field.h +46 -60
  1754. data/third_party/upb/upb/mini_table/file.h +44 -0
  1755. data/third_party/upb/upb/mini_table/internal/enum.h +19 -20
  1756. data/third_party/upb/upb/mini_table/internal/extension.h +34 -3
  1757. data/third_party/upb/upb/mini_table/internal/field.h +136 -27
  1758. data/third_party/upb/upb/mini_table/internal/file.h +47 -10
  1759. data/third_party/upb/upb/mini_table/internal/message.c +17 -9
  1760. data/third_party/upb/upb/mini_table/internal/message.h +94 -23
  1761. data/third_party/upb/upb/mini_table/internal/size_log2.h +77 -0
  1762. data/third_party/upb/upb/mini_table/internal/sub.h +39 -4
  1763. data/third_party/upb/upb/mini_table/message.c +18 -19
  1764. data/third_party/upb/upb/mini_table/message.h +29 -20
  1765. data/third_party/upb/upb/mini_table/sub.h +40 -1
  1766. data/third_party/upb/upb/port/def.inc +18 -0
  1767. data/third_party/upb/upb/port/undef.inc +3 -0
  1768. data/third_party/upb/upb/reflection/def.hpp +8 -4
  1769. data/third_party/upb/upb/reflection/def_pool.c +81 -2
  1770. data/third_party/upb/upb/reflection/def_pool.h +8 -0
  1771. data/third_party/upb/upb/reflection/enum_def.c +42 -19
  1772. data/third_party/upb/upb/reflection/enum_def.h +1 -0
  1773. data/third_party/upb/upb/reflection/enum_value_def.c +43 -14
  1774. data/third_party/upb/upb/reflection/enum_value_def.h +2 -0
  1775. data/third_party/upb/upb/reflection/extension_range.c +13 -5
  1776. data/third_party/upb/upb/reflection/extension_range.h +2 -0
  1777. data/third_party/upb/upb/reflection/field_def.c +177 -130
  1778. data/third_party/upb/upb/reflection/field_def.h +10 -1
  1779. data/third_party/upb/upb/reflection/file_def.c +98 -9
  1780. data/third_party/upb/upb/reflection/file_def.h +3 -0
  1781. data/third_party/upb/upb/reflection/internal/def_builder.c +85 -7
  1782. data/third_party/upb/upb/reflection/internal/def_builder.h +23 -0
  1783. data/third_party/upb/upb/reflection/internal/enum_def.h +5 -4
  1784. data/third_party/upb/upb/reflection/internal/enum_reserved_range.h +1 -1
  1785. data/third_party/upb/upb/reflection/internal/enum_value_def.h +2 -1
  1786. data/third_party/upb/upb/reflection/internal/extension_range.h +2 -2
  1787. data/third_party/upb/upb/reflection/internal/field_def.h +11 -10
  1788. data/third_party/upb/upb/reflection/internal/message_def.h +6 -3
  1789. data/third_party/upb/upb/reflection/internal/method_def.h +5 -3
  1790. data/third_party/upb/upb/reflection/internal/oneof_def.h +5 -3
  1791. data/third_party/upb/upb/reflection/internal/service_def.h +5 -3
  1792. data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +20 -0
  1793. data/third_party/upb/upb/reflection/message.c +27 -12
  1794. data/third_party/upb/upb/reflection/message.h +5 -5
  1795. data/third_party/upb/upb/reflection/message_def.c +56 -27
  1796. data/third_party/upb/upb/reflection/message_def.h +2 -0
  1797. data/third_party/upb/upb/reflection/method_def.c +20 -9
  1798. data/third_party/upb/upb/reflection/method_def.h +2 -0
  1799. data/third_party/upb/upb/reflection/oneof_def.c +20 -11
  1800. data/third_party/upb/upb/reflection/oneof_def.h +3 -1
  1801. data/third_party/upb/upb/reflection/service_def.c +25 -13
  1802. data/third_party/upb/upb/reflection/service_def.h +2 -0
  1803. data/third_party/upb/upb/text/encode.c +126 -36
  1804. data/third_party/upb/upb/wire/decode.c +214 -196
  1805. data/third_party/upb/upb/wire/decode.h +10 -0
  1806. data/third_party/upb/upb/wire/encode.c +105 -91
  1807. data/third_party/upb/upb/wire/encode.h +4 -3
  1808. data/third_party/upb/upb/wire/{decode_fast.c → internal/decode_fast.c} +53 -48
  1809. data/third_party/upb/upb/wire/{decode_fast.h → internal/decode_fast.h} +6 -5
  1810. data/third_party/upb/upb/wire/internal/{decode.h → decoder.h} +15 -31
  1811. data/third_party/upb/upb/wire/internal/reader.h +61 -0
  1812. data/third_party/upb/upb/wire/reader.c +9 -6
  1813. data/third_party/upb/upb/wire/reader.h +18 -47
  1814. data/third_party/utf8_range/utf8_range.c +467 -0
  1815. data/third_party/utf8_range/utf8_range.h +9 -8
  1816. metadata +278 -214
  1817. data/src/core/client_channel/channel_connectivity.cc +0 -265
  1818. data/src/core/client_channel/client_channel_channelz.cc +0 -93
  1819. data/src/core/client_channel/client_channel_channelz.h +0 -85
  1820. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +0 -318
  1821. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +0 -150
  1822. data/src/core/ext/filters/deadline/deadline_filter.cc +0 -407
  1823. data/src/core/ext/filters/deadline/deadline_filter.h +0 -85
  1824. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.cc +0 -325
  1825. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.h +0 -139
  1826. data/src/core/ext/transport/chttp2/transport/http_trace.cc +0 -19
  1827. data/src/core/ext/transport/chttp2/transport/http_trace.h +0 -24
  1828. data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -23
  1829. data/src/core/lib/channel/channel_stack_trace.h +0 -24
  1830. data/src/core/lib/channel/context.h +0 -77
  1831. data/src/core/lib/event_engine/trace.cc +0 -25
  1832. data/src/core/lib/gpr/log.cc +0 -140
  1833. data/src/core/lib/gpr/log_internal.h +0 -55
  1834. data/src/core/lib/gpr/wrap_memcpy.cc +0 -43
  1835. data/src/core/lib/promise/trace.cc +0 -20
  1836. data/src/core/lib/promise/trace.h +0 -24
  1837. data/src/core/lib/resource_quota/trace.cc +0 -19
  1838. data/src/core/lib/resource_quota/trace.h +0 -24
  1839. data/src/core/lib/security/transport/legacy_server_auth_filter.cc +0 -244
  1840. data/src/core/lib/security/transport/tsi_error.cc +0 -31
  1841. data/src/core/lib/security/transport/tsi_error.h +0 -30
  1842. data/src/core/lib/slice/b64.cc +0 -239
  1843. data/src/core/lib/slice/b64.h +0 -52
  1844. data/src/core/lib/slice/slice_refcount.cc +0 -20
  1845. data/src/core/lib/surface/api_trace.cc +0 -25
  1846. data/src/core/lib/surface/call_trace.cc +0 -163
  1847. data/src/core/lib/surface/call_trace.h +0 -30
  1848. data/src/core/lib/surface/channel_ping.cc +0 -69
  1849. data/src/core/lib/surface/wait_for_cq_end_op.cc +0 -75
  1850. data/src/core/lib/surface/wait_for_cq_end_op.h +0 -72
  1851. data/src/core/lib/transport/batch_builder.cc +0 -179
  1852. data/src/core/lib/transport/batch_builder.h +0 -478
  1853. data/src/core/lib/transport/call_factory.cc +0 -41
  1854. data/src/core/lib/transport/call_factory.h +0 -56
  1855. data/src/core/load_balancing/subchannel_list.h +0 -455
  1856. data/src/core/resolver/xds/xds_resolver_trace.cc +0 -25
  1857. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -122
  1858. data/third_party/upb/upb/message/types.h +0 -15
  1859. data/third_party/utf8_range/naive.c +0 -92
  1860. data/third_party/utf8_range/range2-neon.c +0 -157
  1861. data/third_party/utf8_range/range2-sse.c +0 -170
  1862. /data/src/core/{lib/gpr → util}/iphone/cpu.cc +0 -0
  1863. /data/src/core/{lib/gpr → util}/linux/cpu.cc +0 -0
  1864. /data/src/core/{lib/gpr → util}/posix/string.cc +0 -0
  1865. /data/src/core/{lib/gpr → util}/sync_abseil.cc +0 -0
  1866. /data/src/core/{lib/gpr → util}/windows/cpu.cc +0 -0
  1867. /data/third_party/boringssl-with-bazel/src/include/openssl/{kyber.h → experimental/kyber.h} +0 -0
@@ -17,23 +17,23 @@
17
17
 
18
18
  // This file is generated by tools/codegen/core/gen_seq.py
19
19
 
20
- #include <grpc/support/port_platform.h>
21
-
22
20
  #include <stdint.h>
23
21
 
24
22
  #include <utility>
25
23
 
26
24
  #include "absl/base/attributes.h"
25
+ #include "absl/log/check.h"
26
+ #include "absl/log/log.h"
27
27
  #include "absl/strings/str_cat.h"
28
28
 
29
- #include <grpc/support/log.h>
29
+ #include <grpc/support/port_platform.h>
30
30
 
31
+ #include "src/core/lib/debug/trace.h"
31
32
  #include "src/core/lib/gprpp/construct_destruct.h"
32
33
  #include "src/core/lib/gprpp/debug_location.h"
33
34
  #include "src/core/lib/promise/detail/promise_factory.h"
34
35
  #include "src/core/lib/promise/detail/promise_like.h"
35
36
  #include "src/core/lib/promise/poll.h"
36
- #include "src/core/lib/promise/trace.h"
37
37
 
38
38
  // A sequence under some traits for some set of callables P, Fs.
39
39
  // P should be a promise-like object that yields a value.
@@ -120,7 +120,7 @@ struct SeqState<Traits, P, F0> {
120
120
  }
121
121
  SeqState(const SeqState& other) noexcept
122
122
  : state(other.state), whence(other.whence) {
123
- GPR_ASSERT(state == State::kState0);
123
+ CHECK(state == State::kState0);
124
124
  Construct(&prior.current_promise, other.prior.current_promise);
125
125
  Construct(&prior.next_factory, other.prior.next_factory);
126
126
  }
@@ -143,23 +143,23 @@ struct SeqState<Traits, P, F0> {
143
143
  Poll<Result> PollOnce() {
144
144
  switch (state) {
145
145
  case State::kState0: {
146
- if (grpc_trace_promise_primitives.enabled()) {
147
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
148
- "seq[%p]: begin poll step 1/2", this);
146
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
147
+ VLOG(2).AtLocation(whence.file(), whence.line())
148
+ << "seq[" << this << "]: begin poll step 1/2";
149
149
  }
150
150
  auto result = prior.current_promise();
151
151
  PromiseResult0* p = result.value_if_ready();
152
- if (grpc_trace_promise_primitives.enabled()) {
153
- gpr_log(
154
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
155
- "seq[%p]: poll step 1/2 gets %s", this,
156
- p != nullptr
157
- ? (PromiseResultTraits0::IsOk(*p)
158
- ? "ready"
159
- : absl::StrCat("early-error:",
160
- PromiseResultTraits0::ErrorString(*p))
161
- .c_str())
162
- : "pending");
152
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
153
+ VLOG(2).AtLocation(whence.file(), whence.line())
154
+ << "seq[" << this << "]: poll step 1/2 gets "
155
+ << (p != nullptr
156
+ ? (PromiseResultTraits0::IsOk(*p)
157
+ ? "ready"
158
+ : absl::StrCat(
159
+ "early-error:",
160
+ PromiseResultTraits0::ErrorString(*p))
161
+ .c_str())
162
+ : "pending");
163
163
  }
164
164
  if (p == nullptr) return Pending{};
165
165
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -176,15 +176,15 @@ struct SeqState<Traits, P, F0> {
176
176
  ABSL_FALLTHROUGH_INTENDED;
177
177
  default:
178
178
  case State::kState1: {
179
- if (grpc_trace_promise_primitives.enabled()) {
180
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
181
- "seq[%p]: begin poll step 2/2", this);
179
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
180
+ VLOG(2).AtLocation(whence.file(), whence.line())
181
+ << "seq[" << this << "]: begin poll step 2/2";
182
182
  }
183
183
  auto result = current_promise();
184
- if (grpc_trace_promise_primitives.enabled()) {
185
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
186
- "seq[%p]: poll step 2/2 gets %s", this,
187
- result.ready() ? "ready" : "pending");
184
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
185
+ VLOG(2).AtLocation(whence.file(), whence.line())
186
+ << "seq[" << this << "]: poll step 2/2 gets "
187
+ << (result.ready() ? "ready" : "pending");
188
188
  }
189
189
  auto* p = result.value_if_ready();
190
190
  if (p == nullptr) return Pending{};
@@ -255,7 +255,7 @@ struct SeqState<Traits, P, F0, F1> {
255
255
  }
256
256
  SeqState(const SeqState& other) noexcept
257
257
  : state(other.state), whence(other.whence) {
258
- GPR_ASSERT(state == State::kState0);
258
+ CHECK(state == State::kState0);
259
259
  Construct(&prior.current_promise, other.prior.current_promise);
260
260
  Construct(&prior.prior.next_factory, other.prior.prior.next_factory);
261
261
  Construct(&prior.next_factory, other.prior.next_factory);
@@ -286,23 +286,23 @@ struct SeqState<Traits, P, F0, F1> {
286
286
  Poll<Result> PollOnce() {
287
287
  switch (state) {
288
288
  case State::kState0: {
289
- if (grpc_trace_promise_primitives.enabled()) {
290
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
291
- "seq[%p]: begin poll step 1/3", this);
289
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
290
+ VLOG(2).AtLocation(whence.file(), whence.line())
291
+ << "seq[" << this << "]: begin poll step 1/3";
292
292
  }
293
293
  auto result = prior.prior.current_promise();
294
294
  PromiseResult0* p = result.value_if_ready();
295
- if (grpc_trace_promise_primitives.enabled()) {
296
- gpr_log(
297
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
298
- "seq[%p]: poll step 1/3 gets %s", this,
299
- p != nullptr
300
- ? (PromiseResultTraits0::IsOk(*p)
301
- ? "ready"
302
- : absl::StrCat("early-error:",
303
- PromiseResultTraits0::ErrorString(*p))
304
- .c_str())
305
- : "pending");
295
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
296
+ VLOG(2).AtLocation(whence.file(), whence.line())
297
+ << "seq[" << this << "]: poll step 1/3 gets "
298
+ << (p != nullptr
299
+ ? (PromiseResultTraits0::IsOk(*p)
300
+ ? "ready"
301
+ : absl::StrCat(
302
+ "early-error:",
303
+ PromiseResultTraits0::ErrorString(*p))
304
+ .c_str())
305
+ : "pending");
306
306
  }
307
307
  if (p == nullptr) return Pending{};
308
308
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -318,23 +318,23 @@ struct SeqState<Traits, P, F0, F1> {
318
318
  }
319
319
  ABSL_FALLTHROUGH_INTENDED;
320
320
  case State::kState1: {
321
- if (grpc_trace_promise_primitives.enabled()) {
322
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
323
- "seq[%p]: begin poll step 2/3", this);
321
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
322
+ VLOG(2).AtLocation(whence.file(), whence.line())
323
+ << "seq[" << this << "]: begin poll step 2/3";
324
324
  }
325
325
  auto result = prior.current_promise();
326
326
  PromiseResult1* p = result.value_if_ready();
327
- if (grpc_trace_promise_primitives.enabled()) {
328
- gpr_log(
329
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
330
- "seq[%p]: poll step 2/3 gets %s", this,
331
- p != nullptr
332
- ? (PromiseResultTraits1::IsOk(*p)
333
- ? "ready"
334
- : absl::StrCat("early-error:",
335
- PromiseResultTraits1::ErrorString(*p))
336
- .c_str())
337
- : "pending");
327
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
328
+ VLOG(2).AtLocation(whence.file(), whence.line())
329
+ << "seq[" << this << "]: poll step 2/3 gets "
330
+ << (p != nullptr
331
+ ? (PromiseResultTraits1::IsOk(*p)
332
+ ? "ready"
333
+ : absl::StrCat(
334
+ "early-error:",
335
+ PromiseResultTraits1::ErrorString(*p))
336
+ .c_str())
337
+ : "pending");
338
338
  }
339
339
  if (p == nullptr) return Pending{};
340
340
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -351,15 +351,15 @@ struct SeqState<Traits, P, F0, F1> {
351
351
  ABSL_FALLTHROUGH_INTENDED;
352
352
  default:
353
353
  case State::kState2: {
354
- if (grpc_trace_promise_primitives.enabled()) {
355
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
356
- "seq[%p]: begin poll step 3/3", this);
354
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
355
+ VLOG(2).AtLocation(whence.file(), whence.line())
356
+ << "seq[" << this << "]: begin poll step 3/3";
357
357
  }
358
358
  auto result = current_promise();
359
- if (grpc_trace_promise_primitives.enabled()) {
360
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
361
- "seq[%p]: poll step 3/3 gets %s", this,
362
- result.ready() ? "ready" : "pending");
359
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
360
+ VLOG(2).AtLocation(whence.file(), whence.line())
361
+ << "seq[" << this << "]: poll step 3/3 gets "
362
+ << (result.ready() ? "ready" : "pending");
363
363
  }
364
364
  auto* p = result.value_if_ready();
365
365
  if (p == nullptr) return Pending{};
@@ -448,7 +448,7 @@ struct SeqState<Traits, P, F0, F1, F2> {
448
448
  }
449
449
  SeqState(const SeqState& other) noexcept
450
450
  : state(other.state), whence(other.whence) {
451
- GPR_ASSERT(state == State::kState0);
451
+ CHECK(state == State::kState0);
452
452
  Construct(&prior.current_promise, other.prior.current_promise);
453
453
  Construct(&prior.prior.prior.next_factory,
454
454
  other.prior.prior.prior.next_factory);
@@ -488,23 +488,23 @@ struct SeqState<Traits, P, F0, F1, F2> {
488
488
  Poll<Result> PollOnce() {
489
489
  switch (state) {
490
490
  case State::kState0: {
491
- if (grpc_trace_promise_primitives.enabled()) {
492
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
493
- "seq[%p]: begin poll step 1/4", this);
491
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
492
+ VLOG(2).AtLocation(whence.file(), whence.line())
493
+ << "seq[" << this << "]: begin poll step 1/4";
494
494
  }
495
495
  auto result = prior.prior.prior.current_promise();
496
496
  PromiseResult0* p = result.value_if_ready();
497
- if (grpc_trace_promise_primitives.enabled()) {
498
- gpr_log(
499
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
500
- "seq[%p]: poll step 1/4 gets %s", this,
501
- p != nullptr
502
- ? (PromiseResultTraits0::IsOk(*p)
503
- ? "ready"
504
- : absl::StrCat("early-error:",
505
- PromiseResultTraits0::ErrorString(*p))
506
- .c_str())
507
- : "pending");
497
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
498
+ VLOG(2).AtLocation(whence.file(), whence.line())
499
+ << "seq[" << this << "]: poll step 1/4 gets "
500
+ << (p != nullptr
501
+ ? (PromiseResultTraits0::IsOk(*p)
502
+ ? "ready"
503
+ : absl::StrCat(
504
+ "early-error:",
505
+ PromiseResultTraits0::ErrorString(*p))
506
+ .c_str())
507
+ : "pending");
508
508
  }
509
509
  if (p == nullptr) return Pending{};
510
510
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -520,23 +520,23 @@ struct SeqState<Traits, P, F0, F1, F2> {
520
520
  }
521
521
  ABSL_FALLTHROUGH_INTENDED;
522
522
  case State::kState1: {
523
- if (grpc_trace_promise_primitives.enabled()) {
524
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
525
- "seq[%p]: begin poll step 2/4", this);
523
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
524
+ VLOG(2).AtLocation(whence.file(), whence.line())
525
+ << "seq[" << this << "]: begin poll step 2/4";
526
526
  }
527
527
  auto result = prior.prior.current_promise();
528
528
  PromiseResult1* p = result.value_if_ready();
529
- if (grpc_trace_promise_primitives.enabled()) {
530
- gpr_log(
531
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
532
- "seq[%p]: poll step 2/4 gets %s", this,
533
- p != nullptr
534
- ? (PromiseResultTraits1::IsOk(*p)
535
- ? "ready"
536
- : absl::StrCat("early-error:",
537
- PromiseResultTraits1::ErrorString(*p))
538
- .c_str())
539
- : "pending");
529
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
530
+ VLOG(2).AtLocation(whence.file(), whence.line())
531
+ << "seq[" << this << "]: poll step 2/4 gets "
532
+ << (p != nullptr
533
+ ? (PromiseResultTraits1::IsOk(*p)
534
+ ? "ready"
535
+ : absl::StrCat(
536
+ "early-error:",
537
+ PromiseResultTraits1::ErrorString(*p))
538
+ .c_str())
539
+ : "pending");
540
540
  }
541
541
  if (p == nullptr) return Pending{};
542
542
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -552,23 +552,23 @@ struct SeqState<Traits, P, F0, F1, F2> {
552
552
  }
553
553
  ABSL_FALLTHROUGH_INTENDED;
554
554
  case State::kState2: {
555
- if (grpc_trace_promise_primitives.enabled()) {
556
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
557
- "seq[%p]: begin poll step 3/4", this);
555
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
556
+ VLOG(2).AtLocation(whence.file(), whence.line())
557
+ << "seq[" << this << "]: begin poll step 3/4";
558
558
  }
559
559
  auto result = prior.current_promise();
560
560
  PromiseResult2* p = result.value_if_ready();
561
- if (grpc_trace_promise_primitives.enabled()) {
562
- gpr_log(
563
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
564
- "seq[%p]: poll step 3/4 gets %s", this,
565
- p != nullptr
566
- ? (PromiseResultTraits2::IsOk(*p)
567
- ? "ready"
568
- : absl::StrCat("early-error:",
569
- PromiseResultTraits2::ErrorString(*p))
570
- .c_str())
571
- : "pending");
561
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
562
+ VLOG(2).AtLocation(whence.file(), whence.line())
563
+ << "seq[" << this << "]: poll step 3/4 gets "
564
+ << (p != nullptr
565
+ ? (PromiseResultTraits2::IsOk(*p)
566
+ ? "ready"
567
+ : absl::StrCat(
568
+ "early-error:",
569
+ PromiseResultTraits2::ErrorString(*p))
570
+ .c_str())
571
+ : "pending");
572
572
  }
573
573
  if (p == nullptr) return Pending{};
574
574
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -585,15 +585,15 @@ struct SeqState<Traits, P, F0, F1, F2> {
585
585
  ABSL_FALLTHROUGH_INTENDED;
586
586
  default:
587
587
  case State::kState3: {
588
- if (grpc_trace_promise_primitives.enabled()) {
589
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
590
- "seq[%p]: begin poll step 4/4", this);
588
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
589
+ VLOG(2).AtLocation(whence.file(), whence.line())
590
+ << "seq[" << this << "]: begin poll step 4/4";
591
591
  }
592
592
  auto result = current_promise();
593
- if (grpc_trace_promise_primitives.enabled()) {
594
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
595
- "seq[%p]: poll step 4/4 gets %s", this,
596
- result.ready() ? "ready" : "pending");
593
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
594
+ VLOG(2).AtLocation(whence.file(), whence.line())
595
+ << "seq[" << this << "]: poll step 4/4 gets "
596
+ << (result.ready() ? "ready" : "pending");
597
597
  }
598
598
  auto* p = result.value_if_ready();
599
599
  if (p == nullptr) return Pending{};
@@ -701,7 +701,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
701
701
  }
702
702
  SeqState(const SeqState& other) noexcept
703
703
  : state(other.state), whence(other.whence) {
704
- GPR_ASSERT(state == State::kState0);
704
+ CHECK(state == State::kState0);
705
705
  Construct(&prior.current_promise, other.prior.current_promise);
706
706
  Construct(&prior.prior.prior.prior.next_factory,
707
707
  other.prior.prior.prior.prior.next_factory);
@@ -750,23 +750,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
750
750
  Poll<Result> PollOnce() {
751
751
  switch (state) {
752
752
  case State::kState0: {
753
- if (grpc_trace_promise_primitives.enabled()) {
754
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
755
- "seq[%p]: begin poll step 1/5", this);
753
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
754
+ VLOG(2).AtLocation(whence.file(), whence.line())
755
+ << "seq[" << this << "]: begin poll step 1/5";
756
756
  }
757
757
  auto result = prior.prior.prior.prior.current_promise();
758
758
  PromiseResult0* p = result.value_if_ready();
759
- if (grpc_trace_promise_primitives.enabled()) {
760
- gpr_log(
761
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
762
- "seq[%p]: poll step 1/5 gets %s", this,
763
- p != nullptr
764
- ? (PromiseResultTraits0::IsOk(*p)
765
- ? "ready"
766
- : absl::StrCat("early-error:",
767
- PromiseResultTraits0::ErrorString(*p))
768
- .c_str())
769
- : "pending");
759
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
760
+ VLOG(2).AtLocation(whence.file(), whence.line())
761
+ << "seq[" << this << "]: poll step 1/5 gets "
762
+ << (p != nullptr
763
+ ? (PromiseResultTraits0::IsOk(*p)
764
+ ? "ready"
765
+ : absl::StrCat(
766
+ "early-error:",
767
+ PromiseResultTraits0::ErrorString(*p))
768
+ .c_str())
769
+ : "pending");
770
770
  }
771
771
  if (p == nullptr) return Pending{};
772
772
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -782,23 +782,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
782
782
  }
783
783
  ABSL_FALLTHROUGH_INTENDED;
784
784
  case State::kState1: {
785
- if (grpc_trace_promise_primitives.enabled()) {
786
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
787
- "seq[%p]: begin poll step 2/5", this);
785
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
786
+ VLOG(2).AtLocation(whence.file(), whence.line())
787
+ << "seq[" << this << "]: begin poll step 2/5";
788
788
  }
789
789
  auto result = prior.prior.prior.current_promise();
790
790
  PromiseResult1* p = result.value_if_ready();
791
- if (grpc_trace_promise_primitives.enabled()) {
792
- gpr_log(
793
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
794
- "seq[%p]: poll step 2/5 gets %s", this,
795
- p != nullptr
796
- ? (PromiseResultTraits1::IsOk(*p)
797
- ? "ready"
798
- : absl::StrCat("early-error:",
799
- PromiseResultTraits1::ErrorString(*p))
800
- .c_str())
801
- : "pending");
791
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
792
+ VLOG(2).AtLocation(whence.file(), whence.line())
793
+ << "seq[" << this << "]: poll step 2/5 gets "
794
+ << (p != nullptr
795
+ ? (PromiseResultTraits1::IsOk(*p)
796
+ ? "ready"
797
+ : absl::StrCat(
798
+ "early-error:",
799
+ PromiseResultTraits1::ErrorString(*p))
800
+ .c_str())
801
+ : "pending");
802
802
  }
803
803
  if (p == nullptr) return Pending{};
804
804
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -814,23 +814,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
814
814
  }
815
815
  ABSL_FALLTHROUGH_INTENDED;
816
816
  case State::kState2: {
817
- if (grpc_trace_promise_primitives.enabled()) {
818
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
819
- "seq[%p]: begin poll step 3/5", this);
817
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
818
+ VLOG(2).AtLocation(whence.file(), whence.line())
819
+ << "seq[" << this << "]: begin poll step 3/5";
820
820
  }
821
821
  auto result = prior.prior.current_promise();
822
822
  PromiseResult2* p = result.value_if_ready();
823
- if (grpc_trace_promise_primitives.enabled()) {
824
- gpr_log(
825
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
826
- "seq[%p]: poll step 3/5 gets %s", this,
827
- p != nullptr
828
- ? (PromiseResultTraits2::IsOk(*p)
829
- ? "ready"
830
- : absl::StrCat("early-error:",
831
- PromiseResultTraits2::ErrorString(*p))
832
- .c_str())
833
- : "pending");
823
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
824
+ VLOG(2).AtLocation(whence.file(), whence.line())
825
+ << "seq[" << this << "]: poll step 3/5 gets "
826
+ << (p != nullptr
827
+ ? (PromiseResultTraits2::IsOk(*p)
828
+ ? "ready"
829
+ : absl::StrCat(
830
+ "early-error:",
831
+ PromiseResultTraits2::ErrorString(*p))
832
+ .c_str())
833
+ : "pending");
834
834
  }
835
835
  if (p == nullptr) return Pending{};
836
836
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -846,23 +846,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
846
846
  }
847
847
  ABSL_FALLTHROUGH_INTENDED;
848
848
  case State::kState3: {
849
- if (grpc_trace_promise_primitives.enabled()) {
850
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
851
- "seq[%p]: begin poll step 4/5", this);
849
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
850
+ VLOG(2).AtLocation(whence.file(), whence.line())
851
+ << "seq[" << this << "]: begin poll step 4/5";
852
852
  }
853
853
  auto result = prior.current_promise();
854
854
  PromiseResult3* p = result.value_if_ready();
855
- if (grpc_trace_promise_primitives.enabled()) {
856
- gpr_log(
857
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
858
- "seq[%p]: poll step 4/5 gets %s", this,
859
- p != nullptr
860
- ? (PromiseResultTraits3::IsOk(*p)
861
- ? "ready"
862
- : absl::StrCat("early-error:",
863
- PromiseResultTraits3::ErrorString(*p))
864
- .c_str())
865
- : "pending");
855
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
856
+ VLOG(2).AtLocation(whence.file(), whence.line())
857
+ << "seq[" << this << "]: poll step 4/5 gets "
858
+ << (p != nullptr
859
+ ? (PromiseResultTraits3::IsOk(*p)
860
+ ? "ready"
861
+ : absl::StrCat(
862
+ "early-error:",
863
+ PromiseResultTraits3::ErrorString(*p))
864
+ .c_str())
865
+ : "pending");
866
866
  }
867
867
  if (p == nullptr) return Pending{};
868
868
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -879,15 +879,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
879
879
  ABSL_FALLTHROUGH_INTENDED;
880
880
  default:
881
881
  case State::kState4: {
882
- if (grpc_trace_promise_primitives.enabled()) {
883
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
884
- "seq[%p]: begin poll step 5/5", this);
882
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
883
+ VLOG(2).AtLocation(whence.file(), whence.line())
884
+ << "seq[" << this << "]: begin poll step 5/5";
885
885
  }
886
886
  auto result = current_promise();
887
- if (grpc_trace_promise_primitives.enabled()) {
888
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
889
- "seq[%p]: poll step 5/5 gets %s", this,
890
- result.ready() ? "ready" : "pending");
887
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
888
+ VLOG(2).AtLocation(whence.file(), whence.line())
889
+ << "seq[" << this << "]: poll step 5/5 gets "
890
+ << (result.ready() ? "ready" : "pending");
891
891
  }
892
892
  auto* p = result.value_if_ready();
893
893
  if (p == nullptr) return Pending{};
@@ -1022,7 +1022,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1022
1022
  }
1023
1023
  SeqState(const SeqState& other) noexcept
1024
1024
  : state(other.state), whence(other.whence) {
1025
- GPR_ASSERT(state == State::kState0);
1025
+ CHECK(state == State::kState0);
1026
1026
  Construct(&prior.current_promise, other.prior.current_promise);
1027
1027
  Construct(&prior.prior.prior.prior.prior.next_factory,
1028
1028
  other.prior.prior.prior.prior.prior.next_factory);
@@ -1081,23 +1081,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1081
1081
  Poll<Result> PollOnce() {
1082
1082
  switch (state) {
1083
1083
  case State::kState0: {
1084
- if (grpc_trace_promise_primitives.enabled()) {
1085
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1086
- "seq[%p]: begin poll step 1/6", this);
1084
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1085
+ VLOG(2).AtLocation(whence.file(), whence.line())
1086
+ << "seq[" << this << "]: begin poll step 1/6";
1087
1087
  }
1088
1088
  auto result = prior.prior.prior.prior.prior.current_promise();
1089
1089
  PromiseResult0* p = result.value_if_ready();
1090
- if (grpc_trace_promise_primitives.enabled()) {
1091
- gpr_log(
1092
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1093
- "seq[%p]: poll step 1/6 gets %s", this,
1094
- p != nullptr
1095
- ? (PromiseResultTraits0::IsOk(*p)
1096
- ? "ready"
1097
- : absl::StrCat("early-error:",
1098
- PromiseResultTraits0::ErrorString(*p))
1099
- .c_str())
1100
- : "pending");
1090
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1091
+ VLOG(2).AtLocation(whence.file(), whence.line())
1092
+ << "seq[" << this << "]: poll step 1/6 gets "
1093
+ << (p != nullptr
1094
+ ? (PromiseResultTraits0::IsOk(*p)
1095
+ ? "ready"
1096
+ : absl::StrCat(
1097
+ "early-error:",
1098
+ PromiseResultTraits0::ErrorString(*p))
1099
+ .c_str())
1100
+ : "pending");
1101
1101
  }
1102
1102
  if (p == nullptr) return Pending{};
1103
1103
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -1114,23 +1114,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1114
1114
  }
1115
1115
  ABSL_FALLTHROUGH_INTENDED;
1116
1116
  case State::kState1: {
1117
- if (grpc_trace_promise_primitives.enabled()) {
1118
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1119
- "seq[%p]: begin poll step 2/6", this);
1117
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1118
+ VLOG(2).AtLocation(whence.file(), whence.line())
1119
+ << "seq[" << this << "]: begin poll step 2/6";
1120
1120
  }
1121
1121
  auto result = prior.prior.prior.prior.current_promise();
1122
1122
  PromiseResult1* p = result.value_if_ready();
1123
- if (grpc_trace_promise_primitives.enabled()) {
1124
- gpr_log(
1125
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1126
- "seq[%p]: poll step 2/6 gets %s", this,
1127
- p != nullptr
1128
- ? (PromiseResultTraits1::IsOk(*p)
1129
- ? "ready"
1130
- : absl::StrCat("early-error:",
1131
- PromiseResultTraits1::ErrorString(*p))
1132
- .c_str())
1133
- : "pending");
1123
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1124
+ VLOG(2).AtLocation(whence.file(), whence.line())
1125
+ << "seq[" << this << "]: poll step 2/6 gets "
1126
+ << (p != nullptr
1127
+ ? (PromiseResultTraits1::IsOk(*p)
1128
+ ? "ready"
1129
+ : absl::StrCat(
1130
+ "early-error:",
1131
+ PromiseResultTraits1::ErrorString(*p))
1132
+ .c_str())
1133
+ : "pending");
1134
1134
  }
1135
1135
  if (p == nullptr) return Pending{};
1136
1136
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -1146,23 +1146,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1146
1146
  }
1147
1147
  ABSL_FALLTHROUGH_INTENDED;
1148
1148
  case State::kState2: {
1149
- if (grpc_trace_promise_primitives.enabled()) {
1150
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1151
- "seq[%p]: begin poll step 3/6", this);
1149
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1150
+ VLOG(2).AtLocation(whence.file(), whence.line())
1151
+ << "seq[" << this << "]: begin poll step 3/6";
1152
1152
  }
1153
1153
  auto result = prior.prior.prior.current_promise();
1154
1154
  PromiseResult2* p = result.value_if_ready();
1155
- if (grpc_trace_promise_primitives.enabled()) {
1156
- gpr_log(
1157
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1158
- "seq[%p]: poll step 3/6 gets %s", this,
1159
- p != nullptr
1160
- ? (PromiseResultTraits2::IsOk(*p)
1161
- ? "ready"
1162
- : absl::StrCat("early-error:",
1163
- PromiseResultTraits2::ErrorString(*p))
1164
- .c_str())
1165
- : "pending");
1155
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1156
+ VLOG(2).AtLocation(whence.file(), whence.line())
1157
+ << "seq[" << this << "]: poll step 3/6 gets "
1158
+ << (p != nullptr
1159
+ ? (PromiseResultTraits2::IsOk(*p)
1160
+ ? "ready"
1161
+ : absl::StrCat(
1162
+ "early-error:",
1163
+ PromiseResultTraits2::ErrorString(*p))
1164
+ .c_str())
1165
+ : "pending");
1166
1166
  }
1167
1167
  if (p == nullptr) return Pending{};
1168
1168
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -1178,23 +1178,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1178
1178
  }
1179
1179
  ABSL_FALLTHROUGH_INTENDED;
1180
1180
  case State::kState3: {
1181
- if (grpc_trace_promise_primitives.enabled()) {
1182
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1183
- "seq[%p]: begin poll step 4/6", this);
1181
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1182
+ VLOG(2).AtLocation(whence.file(), whence.line())
1183
+ << "seq[" << this << "]: begin poll step 4/6";
1184
1184
  }
1185
1185
  auto result = prior.prior.current_promise();
1186
1186
  PromiseResult3* p = result.value_if_ready();
1187
- if (grpc_trace_promise_primitives.enabled()) {
1188
- gpr_log(
1189
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1190
- "seq[%p]: poll step 4/6 gets %s", this,
1191
- p != nullptr
1192
- ? (PromiseResultTraits3::IsOk(*p)
1193
- ? "ready"
1194
- : absl::StrCat("early-error:",
1195
- PromiseResultTraits3::ErrorString(*p))
1196
- .c_str())
1197
- : "pending");
1187
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1188
+ VLOG(2).AtLocation(whence.file(), whence.line())
1189
+ << "seq[" << this << "]: poll step 4/6 gets "
1190
+ << (p != nullptr
1191
+ ? (PromiseResultTraits3::IsOk(*p)
1192
+ ? "ready"
1193
+ : absl::StrCat(
1194
+ "early-error:",
1195
+ PromiseResultTraits3::ErrorString(*p))
1196
+ .c_str())
1197
+ : "pending");
1198
1198
  }
1199
1199
  if (p == nullptr) return Pending{};
1200
1200
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -1210,23 +1210,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1210
1210
  }
1211
1211
  ABSL_FALLTHROUGH_INTENDED;
1212
1212
  case State::kState4: {
1213
- if (grpc_trace_promise_primitives.enabled()) {
1214
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1215
- "seq[%p]: begin poll step 5/6", this);
1213
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1214
+ VLOG(2).AtLocation(whence.file(), whence.line())
1215
+ << "seq[" << this << "]: begin poll step 5/6";
1216
1216
  }
1217
1217
  auto result = prior.current_promise();
1218
1218
  PromiseResult4* p = result.value_if_ready();
1219
- if (grpc_trace_promise_primitives.enabled()) {
1220
- gpr_log(
1221
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1222
- "seq[%p]: poll step 5/6 gets %s", this,
1223
- p != nullptr
1224
- ? (PromiseResultTraits4::IsOk(*p)
1225
- ? "ready"
1226
- : absl::StrCat("early-error:",
1227
- PromiseResultTraits4::ErrorString(*p))
1228
- .c_str())
1229
- : "pending");
1219
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1220
+ VLOG(2).AtLocation(whence.file(), whence.line())
1221
+ << "seq[" << this << "]: poll step 5/6 gets "
1222
+ << (p != nullptr
1223
+ ? (PromiseResultTraits4::IsOk(*p)
1224
+ ? "ready"
1225
+ : absl::StrCat(
1226
+ "early-error:",
1227
+ PromiseResultTraits4::ErrorString(*p))
1228
+ .c_str())
1229
+ : "pending");
1230
1230
  }
1231
1231
  if (p == nullptr) return Pending{};
1232
1232
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -1243,15 +1243,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1243
1243
  ABSL_FALLTHROUGH_INTENDED;
1244
1244
  default:
1245
1245
  case State::kState5: {
1246
- if (grpc_trace_promise_primitives.enabled()) {
1247
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1248
- "seq[%p]: begin poll step 6/6", this);
1246
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1247
+ VLOG(2).AtLocation(whence.file(), whence.line())
1248
+ << "seq[" << this << "]: begin poll step 6/6";
1249
1249
  }
1250
1250
  auto result = current_promise();
1251
- if (grpc_trace_promise_primitives.enabled()) {
1252
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1253
- "seq[%p]: poll step 6/6 gets %s", this,
1254
- result.ready() ? "ready" : "pending");
1251
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1252
+ VLOG(2).AtLocation(whence.file(), whence.line())
1253
+ << "seq[" << this << "]: poll step 6/6 gets "
1254
+ << (result.ready() ? "ready" : "pending");
1255
1255
  }
1256
1256
  auto* p = result.value_if_ready();
1257
1257
  if (p == nullptr) return Pending{};
@@ -1406,7 +1406,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1406
1406
  }
1407
1407
  SeqState(const SeqState& other) noexcept
1408
1408
  : state(other.state), whence(other.whence) {
1409
- GPR_ASSERT(state == State::kState0);
1409
+ CHECK(state == State::kState0);
1410
1410
  Construct(&prior.current_promise, other.prior.current_promise);
1411
1411
  Construct(&prior.prior.prior.prior.prior.prior.next_factory,
1412
1412
  other.prior.prior.prior.prior.prior.prior.next_factory);
@@ -1477,23 +1477,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1477
1477
  Poll<Result> PollOnce() {
1478
1478
  switch (state) {
1479
1479
  case State::kState0: {
1480
- if (grpc_trace_promise_primitives.enabled()) {
1481
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1482
- "seq[%p]: begin poll step 1/7", this);
1480
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1481
+ VLOG(2).AtLocation(whence.file(), whence.line())
1482
+ << "seq[" << this << "]: begin poll step 1/7";
1483
1483
  }
1484
1484
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
1485
1485
  PromiseResult0* p = result.value_if_ready();
1486
- if (grpc_trace_promise_primitives.enabled()) {
1487
- gpr_log(
1488
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1489
- "seq[%p]: poll step 1/7 gets %s", this,
1490
- p != nullptr
1491
- ? (PromiseResultTraits0::IsOk(*p)
1492
- ? "ready"
1493
- : absl::StrCat("early-error:",
1494
- PromiseResultTraits0::ErrorString(*p))
1495
- .c_str())
1496
- : "pending");
1486
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1487
+ VLOG(2).AtLocation(whence.file(), whence.line())
1488
+ << "seq[" << this << "]: poll step 1/7 gets "
1489
+ << (p != nullptr
1490
+ ? (PromiseResultTraits0::IsOk(*p)
1491
+ ? "ready"
1492
+ : absl::StrCat(
1493
+ "early-error:",
1494
+ PromiseResultTraits0::ErrorString(*p))
1495
+ .c_str())
1496
+ : "pending");
1497
1497
  }
1498
1498
  if (p == nullptr) return Pending{};
1499
1499
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -1510,23 +1510,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1510
1510
  }
1511
1511
  ABSL_FALLTHROUGH_INTENDED;
1512
1512
  case State::kState1: {
1513
- if (grpc_trace_promise_primitives.enabled()) {
1514
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1515
- "seq[%p]: begin poll step 2/7", this);
1513
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1514
+ VLOG(2).AtLocation(whence.file(), whence.line())
1515
+ << "seq[" << this << "]: begin poll step 2/7";
1516
1516
  }
1517
1517
  auto result = prior.prior.prior.prior.prior.current_promise();
1518
1518
  PromiseResult1* p = result.value_if_ready();
1519
- if (grpc_trace_promise_primitives.enabled()) {
1520
- gpr_log(
1521
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1522
- "seq[%p]: poll step 2/7 gets %s", this,
1523
- p != nullptr
1524
- ? (PromiseResultTraits1::IsOk(*p)
1525
- ? "ready"
1526
- : absl::StrCat("early-error:",
1527
- PromiseResultTraits1::ErrorString(*p))
1528
- .c_str())
1529
- : "pending");
1519
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1520
+ VLOG(2).AtLocation(whence.file(), whence.line())
1521
+ << "seq[" << this << "]: poll step 2/7 gets "
1522
+ << (p != nullptr
1523
+ ? (PromiseResultTraits1::IsOk(*p)
1524
+ ? "ready"
1525
+ : absl::StrCat(
1526
+ "early-error:",
1527
+ PromiseResultTraits1::ErrorString(*p))
1528
+ .c_str())
1529
+ : "pending");
1530
1530
  }
1531
1531
  if (p == nullptr) return Pending{};
1532
1532
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -1543,23 +1543,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1543
1543
  }
1544
1544
  ABSL_FALLTHROUGH_INTENDED;
1545
1545
  case State::kState2: {
1546
- if (grpc_trace_promise_primitives.enabled()) {
1547
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1548
- "seq[%p]: begin poll step 3/7", this);
1546
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1547
+ VLOG(2).AtLocation(whence.file(), whence.line())
1548
+ << "seq[" << this << "]: begin poll step 3/7";
1549
1549
  }
1550
1550
  auto result = prior.prior.prior.prior.current_promise();
1551
1551
  PromiseResult2* p = result.value_if_ready();
1552
- if (grpc_trace_promise_primitives.enabled()) {
1553
- gpr_log(
1554
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1555
- "seq[%p]: poll step 3/7 gets %s", this,
1556
- p != nullptr
1557
- ? (PromiseResultTraits2::IsOk(*p)
1558
- ? "ready"
1559
- : absl::StrCat("early-error:",
1560
- PromiseResultTraits2::ErrorString(*p))
1561
- .c_str())
1562
- : "pending");
1552
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1553
+ VLOG(2).AtLocation(whence.file(), whence.line())
1554
+ << "seq[" << this << "]: poll step 3/7 gets "
1555
+ << (p != nullptr
1556
+ ? (PromiseResultTraits2::IsOk(*p)
1557
+ ? "ready"
1558
+ : absl::StrCat(
1559
+ "early-error:",
1560
+ PromiseResultTraits2::ErrorString(*p))
1561
+ .c_str())
1562
+ : "pending");
1563
1563
  }
1564
1564
  if (p == nullptr) return Pending{};
1565
1565
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -1575,23 +1575,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1575
1575
  }
1576
1576
  ABSL_FALLTHROUGH_INTENDED;
1577
1577
  case State::kState3: {
1578
- if (grpc_trace_promise_primitives.enabled()) {
1579
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1580
- "seq[%p]: begin poll step 4/7", this);
1578
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1579
+ VLOG(2).AtLocation(whence.file(), whence.line())
1580
+ << "seq[" << this << "]: begin poll step 4/7";
1581
1581
  }
1582
1582
  auto result = prior.prior.prior.current_promise();
1583
1583
  PromiseResult3* p = result.value_if_ready();
1584
- if (grpc_trace_promise_primitives.enabled()) {
1585
- gpr_log(
1586
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1587
- "seq[%p]: poll step 4/7 gets %s", this,
1588
- p != nullptr
1589
- ? (PromiseResultTraits3::IsOk(*p)
1590
- ? "ready"
1591
- : absl::StrCat("early-error:",
1592
- PromiseResultTraits3::ErrorString(*p))
1593
- .c_str())
1594
- : "pending");
1584
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1585
+ VLOG(2).AtLocation(whence.file(), whence.line())
1586
+ << "seq[" << this << "]: poll step 4/7 gets "
1587
+ << (p != nullptr
1588
+ ? (PromiseResultTraits3::IsOk(*p)
1589
+ ? "ready"
1590
+ : absl::StrCat(
1591
+ "early-error:",
1592
+ PromiseResultTraits3::ErrorString(*p))
1593
+ .c_str())
1594
+ : "pending");
1595
1595
  }
1596
1596
  if (p == nullptr) return Pending{};
1597
1597
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -1607,23 +1607,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1607
1607
  }
1608
1608
  ABSL_FALLTHROUGH_INTENDED;
1609
1609
  case State::kState4: {
1610
- if (grpc_trace_promise_primitives.enabled()) {
1611
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1612
- "seq[%p]: begin poll step 5/7", this);
1610
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1611
+ VLOG(2).AtLocation(whence.file(), whence.line())
1612
+ << "seq[" << this << "]: begin poll step 5/7";
1613
1613
  }
1614
1614
  auto result = prior.prior.current_promise();
1615
1615
  PromiseResult4* p = result.value_if_ready();
1616
- if (grpc_trace_promise_primitives.enabled()) {
1617
- gpr_log(
1618
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1619
- "seq[%p]: poll step 5/7 gets %s", this,
1620
- p != nullptr
1621
- ? (PromiseResultTraits4::IsOk(*p)
1622
- ? "ready"
1623
- : absl::StrCat("early-error:",
1624
- PromiseResultTraits4::ErrorString(*p))
1625
- .c_str())
1626
- : "pending");
1616
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1617
+ VLOG(2).AtLocation(whence.file(), whence.line())
1618
+ << "seq[" << this << "]: poll step 5/7 gets "
1619
+ << (p != nullptr
1620
+ ? (PromiseResultTraits4::IsOk(*p)
1621
+ ? "ready"
1622
+ : absl::StrCat(
1623
+ "early-error:",
1624
+ PromiseResultTraits4::ErrorString(*p))
1625
+ .c_str())
1626
+ : "pending");
1627
1627
  }
1628
1628
  if (p == nullptr) return Pending{};
1629
1629
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -1639,23 +1639,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1639
1639
  }
1640
1640
  ABSL_FALLTHROUGH_INTENDED;
1641
1641
  case State::kState5: {
1642
- if (grpc_trace_promise_primitives.enabled()) {
1643
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1644
- "seq[%p]: begin poll step 6/7", this);
1642
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1643
+ VLOG(2).AtLocation(whence.file(), whence.line())
1644
+ << "seq[" << this << "]: begin poll step 6/7";
1645
1645
  }
1646
1646
  auto result = prior.current_promise();
1647
1647
  PromiseResult5* p = result.value_if_ready();
1648
- if (grpc_trace_promise_primitives.enabled()) {
1649
- gpr_log(
1650
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1651
- "seq[%p]: poll step 6/7 gets %s", this,
1652
- p != nullptr
1653
- ? (PromiseResultTraits5::IsOk(*p)
1654
- ? "ready"
1655
- : absl::StrCat("early-error:",
1656
- PromiseResultTraits5::ErrorString(*p))
1657
- .c_str())
1658
- : "pending");
1648
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1649
+ VLOG(2).AtLocation(whence.file(), whence.line())
1650
+ << "seq[" << this << "]: poll step 6/7 gets "
1651
+ << (p != nullptr
1652
+ ? (PromiseResultTraits5::IsOk(*p)
1653
+ ? "ready"
1654
+ : absl::StrCat(
1655
+ "early-error:",
1656
+ PromiseResultTraits5::ErrorString(*p))
1657
+ .c_str())
1658
+ : "pending");
1659
1659
  }
1660
1660
  if (p == nullptr) return Pending{};
1661
1661
  if (!PromiseResultTraits5::IsOk(*p)) {
@@ -1672,15 +1672,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1672
1672
  ABSL_FALLTHROUGH_INTENDED;
1673
1673
  default:
1674
1674
  case State::kState6: {
1675
- if (grpc_trace_promise_primitives.enabled()) {
1676
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1677
- "seq[%p]: begin poll step 7/7", this);
1675
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1676
+ VLOG(2).AtLocation(whence.file(), whence.line())
1677
+ << "seq[" << this << "]: begin poll step 7/7";
1678
1678
  }
1679
1679
  auto result = current_promise();
1680
- if (grpc_trace_promise_primitives.enabled()) {
1681
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1682
- "seq[%p]: poll step 7/7 gets %s", this,
1683
- result.ready() ? "ready" : "pending");
1680
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1681
+ VLOG(2).AtLocation(whence.file(), whence.line())
1682
+ << "seq[" << this << "]: poll step 7/7 gets "
1683
+ << (result.ready() ? "ready" : "pending");
1684
1684
  }
1685
1685
  auto* p = result.value_if_ready();
1686
1686
  if (p == nullptr) return Pending{};
@@ -1856,7 +1856,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1856
1856
  }
1857
1857
  SeqState(const SeqState& other) noexcept
1858
1858
  : state(other.state), whence(other.whence) {
1859
- GPR_ASSERT(state == State::kState0);
1859
+ CHECK(state == State::kState0);
1860
1860
  Construct(&prior.current_promise, other.prior.current_promise);
1861
1861
  Construct(&prior.prior.prior.prior.prior.prior.prior.next_factory,
1862
1862
  other.prior.prior.prior.prior.prior.prior.prior.next_factory);
@@ -1939,24 +1939,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1939
1939
  Poll<Result> PollOnce() {
1940
1940
  switch (state) {
1941
1941
  case State::kState0: {
1942
- if (grpc_trace_promise_primitives.enabled()) {
1943
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1944
- "seq[%p]: begin poll step 1/8", this);
1942
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1943
+ VLOG(2).AtLocation(whence.file(), whence.line())
1944
+ << "seq[" << this << "]: begin poll step 1/8";
1945
1945
  }
1946
1946
  auto result =
1947
1947
  prior.prior.prior.prior.prior.prior.prior.current_promise();
1948
1948
  PromiseResult0* p = result.value_if_ready();
1949
- if (grpc_trace_promise_primitives.enabled()) {
1950
- gpr_log(
1951
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1952
- "seq[%p]: poll step 1/8 gets %s", this,
1953
- p != nullptr
1954
- ? (PromiseResultTraits0::IsOk(*p)
1955
- ? "ready"
1956
- : absl::StrCat("early-error:",
1957
- PromiseResultTraits0::ErrorString(*p))
1958
- .c_str())
1959
- : "pending");
1949
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1950
+ VLOG(2).AtLocation(whence.file(), whence.line())
1951
+ << "seq[" << this << "]: poll step 1/8 gets "
1952
+ << (p != nullptr
1953
+ ? (PromiseResultTraits0::IsOk(*p)
1954
+ ? "ready"
1955
+ : absl::StrCat(
1956
+ "early-error:",
1957
+ PromiseResultTraits0::ErrorString(*p))
1958
+ .c_str())
1959
+ : "pending");
1960
1960
  }
1961
1961
  if (p == nullptr) return Pending{};
1962
1962
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -1974,23 +1974,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1974
1974
  }
1975
1975
  ABSL_FALLTHROUGH_INTENDED;
1976
1976
  case State::kState1: {
1977
- if (grpc_trace_promise_primitives.enabled()) {
1978
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1979
- "seq[%p]: begin poll step 2/8", this);
1977
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1978
+ VLOG(2).AtLocation(whence.file(), whence.line())
1979
+ << "seq[" << this << "]: begin poll step 2/8";
1980
1980
  }
1981
1981
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
1982
1982
  PromiseResult1* p = result.value_if_ready();
1983
- if (grpc_trace_promise_primitives.enabled()) {
1984
- gpr_log(
1985
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
1986
- "seq[%p]: poll step 2/8 gets %s", this,
1987
- p != nullptr
1988
- ? (PromiseResultTraits1::IsOk(*p)
1989
- ? "ready"
1990
- : absl::StrCat("early-error:",
1991
- PromiseResultTraits1::ErrorString(*p))
1992
- .c_str())
1993
- : "pending");
1983
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1984
+ VLOG(2).AtLocation(whence.file(), whence.line())
1985
+ << "seq[" << this << "]: poll step 2/8 gets "
1986
+ << (p != nullptr
1987
+ ? (PromiseResultTraits1::IsOk(*p)
1988
+ ? "ready"
1989
+ : absl::StrCat(
1990
+ "early-error:",
1991
+ PromiseResultTraits1::ErrorString(*p))
1992
+ .c_str())
1993
+ : "pending");
1994
1994
  }
1995
1995
  if (p == nullptr) return Pending{};
1996
1996
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -2007,23 +2007,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
2007
2007
  }
2008
2008
  ABSL_FALLTHROUGH_INTENDED;
2009
2009
  case State::kState2: {
2010
- if (grpc_trace_promise_primitives.enabled()) {
2011
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2012
- "seq[%p]: begin poll step 3/8", this);
2010
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2011
+ VLOG(2).AtLocation(whence.file(), whence.line())
2012
+ << "seq[" << this << "]: begin poll step 3/8";
2013
2013
  }
2014
2014
  auto result = prior.prior.prior.prior.prior.current_promise();
2015
2015
  PromiseResult2* p = result.value_if_ready();
2016
- if (grpc_trace_promise_primitives.enabled()) {
2017
- gpr_log(
2018
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2019
- "seq[%p]: poll step 3/8 gets %s", this,
2020
- p != nullptr
2021
- ? (PromiseResultTraits2::IsOk(*p)
2022
- ? "ready"
2023
- : absl::StrCat("early-error:",
2024
- PromiseResultTraits2::ErrorString(*p))
2025
- .c_str())
2026
- : "pending");
2016
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2017
+ VLOG(2).AtLocation(whence.file(), whence.line())
2018
+ << "seq[" << this << "]: poll step 3/8 gets "
2019
+ << (p != nullptr
2020
+ ? (PromiseResultTraits2::IsOk(*p)
2021
+ ? "ready"
2022
+ : absl::StrCat(
2023
+ "early-error:",
2024
+ PromiseResultTraits2::ErrorString(*p))
2025
+ .c_str())
2026
+ : "pending");
2027
2027
  }
2028
2028
  if (p == nullptr) return Pending{};
2029
2029
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -2040,23 +2040,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
2040
2040
  }
2041
2041
  ABSL_FALLTHROUGH_INTENDED;
2042
2042
  case State::kState3: {
2043
- if (grpc_trace_promise_primitives.enabled()) {
2044
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2045
- "seq[%p]: begin poll step 4/8", this);
2043
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2044
+ VLOG(2).AtLocation(whence.file(), whence.line())
2045
+ << "seq[" << this << "]: begin poll step 4/8";
2046
2046
  }
2047
2047
  auto result = prior.prior.prior.prior.current_promise();
2048
2048
  PromiseResult3* p = result.value_if_ready();
2049
- if (grpc_trace_promise_primitives.enabled()) {
2050
- gpr_log(
2051
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2052
- "seq[%p]: poll step 4/8 gets %s", this,
2053
- p != nullptr
2054
- ? (PromiseResultTraits3::IsOk(*p)
2055
- ? "ready"
2056
- : absl::StrCat("early-error:",
2057
- PromiseResultTraits3::ErrorString(*p))
2058
- .c_str())
2059
- : "pending");
2049
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2050
+ VLOG(2).AtLocation(whence.file(), whence.line())
2051
+ << "seq[" << this << "]: poll step 4/8 gets "
2052
+ << (p != nullptr
2053
+ ? (PromiseResultTraits3::IsOk(*p)
2054
+ ? "ready"
2055
+ : absl::StrCat(
2056
+ "early-error:",
2057
+ PromiseResultTraits3::ErrorString(*p))
2058
+ .c_str())
2059
+ : "pending");
2060
2060
  }
2061
2061
  if (p == nullptr) return Pending{};
2062
2062
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -2072,23 +2072,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
2072
2072
  }
2073
2073
  ABSL_FALLTHROUGH_INTENDED;
2074
2074
  case State::kState4: {
2075
- if (grpc_trace_promise_primitives.enabled()) {
2076
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2077
- "seq[%p]: begin poll step 5/8", this);
2075
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2076
+ VLOG(2).AtLocation(whence.file(), whence.line())
2077
+ << "seq[" << this << "]: begin poll step 5/8";
2078
2078
  }
2079
2079
  auto result = prior.prior.prior.current_promise();
2080
2080
  PromiseResult4* p = result.value_if_ready();
2081
- if (grpc_trace_promise_primitives.enabled()) {
2082
- gpr_log(
2083
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2084
- "seq[%p]: poll step 5/8 gets %s", this,
2085
- p != nullptr
2086
- ? (PromiseResultTraits4::IsOk(*p)
2087
- ? "ready"
2088
- : absl::StrCat("early-error:",
2089
- PromiseResultTraits4::ErrorString(*p))
2090
- .c_str())
2091
- : "pending");
2081
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2082
+ VLOG(2).AtLocation(whence.file(), whence.line())
2083
+ << "seq[" << this << "]: poll step 5/8 gets "
2084
+ << (p != nullptr
2085
+ ? (PromiseResultTraits4::IsOk(*p)
2086
+ ? "ready"
2087
+ : absl::StrCat(
2088
+ "early-error:",
2089
+ PromiseResultTraits4::ErrorString(*p))
2090
+ .c_str())
2091
+ : "pending");
2092
2092
  }
2093
2093
  if (p == nullptr) return Pending{};
2094
2094
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -2104,23 +2104,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
2104
2104
  }
2105
2105
  ABSL_FALLTHROUGH_INTENDED;
2106
2106
  case State::kState5: {
2107
- if (grpc_trace_promise_primitives.enabled()) {
2108
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2109
- "seq[%p]: begin poll step 6/8", this);
2107
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2108
+ VLOG(2).AtLocation(whence.file(), whence.line())
2109
+ << "seq[" << this << "]: begin poll step 6/8";
2110
2110
  }
2111
2111
  auto result = prior.prior.current_promise();
2112
2112
  PromiseResult5* p = result.value_if_ready();
2113
- if (grpc_trace_promise_primitives.enabled()) {
2114
- gpr_log(
2115
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2116
- "seq[%p]: poll step 6/8 gets %s", this,
2117
- p != nullptr
2118
- ? (PromiseResultTraits5::IsOk(*p)
2119
- ? "ready"
2120
- : absl::StrCat("early-error:",
2121
- PromiseResultTraits5::ErrorString(*p))
2122
- .c_str())
2123
- : "pending");
2113
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2114
+ VLOG(2).AtLocation(whence.file(), whence.line())
2115
+ << "seq[" << this << "]: poll step 6/8 gets "
2116
+ << (p != nullptr
2117
+ ? (PromiseResultTraits5::IsOk(*p)
2118
+ ? "ready"
2119
+ : absl::StrCat(
2120
+ "early-error:",
2121
+ PromiseResultTraits5::ErrorString(*p))
2122
+ .c_str())
2123
+ : "pending");
2124
2124
  }
2125
2125
  if (p == nullptr) return Pending{};
2126
2126
  if (!PromiseResultTraits5::IsOk(*p)) {
@@ -2136,23 +2136,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
2136
2136
  }
2137
2137
  ABSL_FALLTHROUGH_INTENDED;
2138
2138
  case State::kState6: {
2139
- if (grpc_trace_promise_primitives.enabled()) {
2140
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2141
- "seq[%p]: begin poll step 7/8", this);
2139
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2140
+ VLOG(2).AtLocation(whence.file(), whence.line())
2141
+ << "seq[" << this << "]: begin poll step 7/8";
2142
2142
  }
2143
2143
  auto result = prior.current_promise();
2144
2144
  PromiseResult6* p = result.value_if_ready();
2145
- if (grpc_trace_promise_primitives.enabled()) {
2146
- gpr_log(
2147
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2148
- "seq[%p]: poll step 7/8 gets %s", this,
2149
- p != nullptr
2150
- ? (PromiseResultTraits6::IsOk(*p)
2151
- ? "ready"
2152
- : absl::StrCat("early-error:",
2153
- PromiseResultTraits6::ErrorString(*p))
2154
- .c_str())
2155
- : "pending");
2145
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2146
+ VLOG(2).AtLocation(whence.file(), whence.line())
2147
+ << "seq[" << this << "]: poll step 7/8 gets "
2148
+ << (p != nullptr
2149
+ ? (PromiseResultTraits6::IsOk(*p)
2150
+ ? "ready"
2151
+ : absl::StrCat(
2152
+ "early-error:",
2153
+ PromiseResultTraits6::ErrorString(*p))
2154
+ .c_str())
2155
+ : "pending");
2156
2156
  }
2157
2157
  if (p == nullptr) return Pending{};
2158
2158
  if (!PromiseResultTraits6::IsOk(*p)) {
@@ -2169,15 +2169,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
2169
2169
  ABSL_FALLTHROUGH_INTENDED;
2170
2170
  default:
2171
2171
  case State::kState7: {
2172
- if (grpc_trace_promise_primitives.enabled()) {
2173
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2174
- "seq[%p]: begin poll step 8/8", this);
2172
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2173
+ VLOG(2).AtLocation(whence.file(), whence.line())
2174
+ << "seq[" << this << "]: begin poll step 8/8";
2175
2175
  }
2176
2176
  auto result = current_promise();
2177
- if (grpc_trace_promise_primitives.enabled()) {
2178
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2179
- "seq[%p]: poll step 8/8 gets %s", this,
2180
- result.ready() ? "ready" : "pending");
2177
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2178
+ VLOG(2).AtLocation(whence.file(), whence.line())
2179
+ << "seq[" << this << "]: poll step 8/8 gets "
2180
+ << (result.ready() ? "ready" : "pending");
2181
2181
  }
2182
2182
  auto* p = result.value_if_ready();
2183
2183
  if (p == nullptr) return Pending{};
@@ -2374,7 +2374,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2374
2374
  }
2375
2375
  SeqState(const SeqState& other) noexcept
2376
2376
  : state(other.state), whence(other.whence) {
2377
- GPR_ASSERT(state == State::kState0);
2377
+ CHECK(state == State::kState0);
2378
2378
  Construct(&prior.current_promise, other.prior.current_promise);
2379
2379
  Construct(
2380
2380
  &prior.prior.prior.prior.prior.prior.prior.prior.next_factory,
@@ -2470,24 +2470,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2470
2470
  Poll<Result> PollOnce() {
2471
2471
  switch (state) {
2472
2472
  case State::kState0: {
2473
- if (grpc_trace_promise_primitives.enabled()) {
2474
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2475
- "seq[%p]: begin poll step 1/9", this);
2473
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2474
+ VLOG(2).AtLocation(whence.file(), whence.line())
2475
+ << "seq[" << this << "]: begin poll step 1/9";
2476
2476
  }
2477
2477
  auto result =
2478
2478
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
2479
2479
  PromiseResult0* p = result.value_if_ready();
2480
- if (grpc_trace_promise_primitives.enabled()) {
2481
- gpr_log(
2482
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2483
- "seq[%p]: poll step 1/9 gets %s", this,
2484
- p != nullptr
2485
- ? (PromiseResultTraits0::IsOk(*p)
2486
- ? "ready"
2487
- : absl::StrCat("early-error:",
2488
- PromiseResultTraits0::ErrorString(*p))
2489
- .c_str())
2490
- : "pending");
2480
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2481
+ VLOG(2).AtLocation(whence.file(), whence.line())
2482
+ << "seq[" << this << "]: poll step 1/9 gets "
2483
+ << (p != nullptr
2484
+ ? (PromiseResultTraits0::IsOk(*p)
2485
+ ? "ready"
2486
+ : absl::StrCat(
2487
+ "early-error:",
2488
+ PromiseResultTraits0::ErrorString(*p))
2489
+ .c_str())
2490
+ : "pending");
2491
2491
  }
2492
2492
  if (p == nullptr) return Pending{};
2493
2493
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -2506,24 +2506,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2506
2506
  }
2507
2507
  ABSL_FALLTHROUGH_INTENDED;
2508
2508
  case State::kState1: {
2509
- if (grpc_trace_promise_primitives.enabled()) {
2510
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2511
- "seq[%p]: begin poll step 2/9", this);
2509
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2510
+ VLOG(2).AtLocation(whence.file(), whence.line())
2511
+ << "seq[" << this << "]: begin poll step 2/9";
2512
2512
  }
2513
2513
  auto result =
2514
2514
  prior.prior.prior.prior.prior.prior.prior.current_promise();
2515
2515
  PromiseResult1* p = result.value_if_ready();
2516
- if (grpc_trace_promise_primitives.enabled()) {
2517
- gpr_log(
2518
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2519
- "seq[%p]: poll step 2/9 gets %s", this,
2520
- p != nullptr
2521
- ? (PromiseResultTraits1::IsOk(*p)
2522
- ? "ready"
2523
- : absl::StrCat("early-error:",
2524
- PromiseResultTraits1::ErrorString(*p))
2525
- .c_str())
2526
- : "pending");
2516
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2517
+ VLOG(2).AtLocation(whence.file(), whence.line())
2518
+ << "seq[" << this << "]: poll step 2/9 gets "
2519
+ << (p != nullptr
2520
+ ? (PromiseResultTraits1::IsOk(*p)
2521
+ ? "ready"
2522
+ : absl::StrCat(
2523
+ "early-error:",
2524
+ PromiseResultTraits1::ErrorString(*p))
2525
+ .c_str())
2526
+ : "pending");
2527
2527
  }
2528
2528
  if (p == nullptr) return Pending{};
2529
2529
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -2541,23 +2541,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2541
2541
  }
2542
2542
  ABSL_FALLTHROUGH_INTENDED;
2543
2543
  case State::kState2: {
2544
- if (grpc_trace_promise_primitives.enabled()) {
2545
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2546
- "seq[%p]: begin poll step 3/9", this);
2544
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2545
+ VLOG(2).AtLocation(whence.file(), whence.line())
2546
+ << "seq[" << this << "]: begin poll step 3/9";
2547
2547
  }
2548
2548
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
2549
2549
  PromiseResult2* p = result.value_if_ready();
2550
- if (grpc_trace_promise_primitives.enabled()) {
2551
- gpr_log(
2552
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2553
- "seq[%p]: poll step 3/9 gets %s", this,
2554
- p != nullptr
2555
- ? (PromiseResultTraits2::IsOk(*p)
2556
- ? "ready"
2557
- : absl::StrCat("early-error:",
2558
- PromiseResultTraits2::ErrorString(*p))
2559
- .c_str())
2560
- : "pending");
2550
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2551
+ VLOG(2).AtLocation(whence.file(), whence.line())
2552
+ << "seq[" << this << "]: poll step 3/9 gets "
2553
+ << (p != nullptr
2554
+ ? (PromiseResultTraits2::IsOk(*p)
2555
+ ? "ready"
2556
+ : absl::StrCat(
2557
+ "early-error:",
2558
+ PromiseResultTraits2::ErrorString(*p))
2559
+ .c_str())
2560
+ : "pending");
2561
2561
  }
2562
2562
  if (p == nullptr) return Pending{};
2563
2563
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -2574,23 +2574,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2574
2574
  }
2575
2575
  ABSL_FALLTHROUGH_INTENDED;
2576
2576
  case State::kState3: {
2577
- if (grpc_trace_promise_primitives.enabled()) {
2578
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2579
- "seq[%p]: begin poll step 4/9", this);
2577
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2578
+ VLOG(2).AtLocation(whence.file(), whence.line())
2579
+ << "seq[" << this << "]: begin poll step 4/9";
2580
2580
  }
2581
2581
  auto result = prior.prior.prior.prior.prior.current_promise();
2582
2582
  PromiseResult3* p = result.value_if_ready();
2583
- if (grpc_trace_promise_primitives.enabled()) {
2584
- gpr_log(
2585
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2586
- "seq[%p]: poll step 4/9 gets %s", this,
2587
- p != nullptr
2588
- ? (PromiseResultTraits3::IsOk(*p)
2589
- ? "ready"
2590
- : absl::StrCat("early-error:",
2591
- PromiseResultTraits3::ErrorString(*p))
2592
- .c_str())
2593
- : "pending");
2583
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2584
+ VLOG(2).AtLocation(whence.file(), whence.line())
2585
+ << "seq[" << this << "]: poll step 4/9 gets "
2586
+ << (p != nullptr
2587
+ ? (PromiseResultTraits3::IsOk(*p)
2588
+ ? "ready"
2589
+ : absl::StrCat(
2590
+ "early-error:",
2591
+ PromiseResultTraits3::ErrorString(*p))
2592
+ .c_str())
2593
+ : "pending");
2594
2594
  }
2595
2595
  if (p == nullptr) return Pending{};
2596
2596
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -2607,23 +2607,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2607
2607
  }
2608
2608
  ABSL_FALLTHROUGH_INTENDED;
2609
2609
  case State::kState4: {
2610
- if (grpc_trace_promise_primitives.enabled()) {
2611
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2612
- "seq[%p]: begin poll step 5/9", this);
2610
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2611
+ VLOG(2).AtLocation(whence.file(), whence.line())
2612
+ << "seq[" << this << "]: begin poll step 5/9";
2613
2613
  }
2614
2614
  auto result = prior.prior.prior.prior.current_promise();
2615
2615
  PromiseResult4* p = result.value_if_ready();
2616
- if (grpc_trace_promise_primitives.enabled()) {
2617
- gpr_log(
2618
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2619
- "seq[%p]: poll step 5/9 gets %s", this,
2620
- p != nullptr
2621
- ? (PromiseResultTraits4::IsOk(*p)
2622
- ? "ready"
2623
- : absl::StrCat("early-error:",
2624
- PromiseResultTraits4::ErrorString(*p))
2625
- .c_str())
2626
- : "pending");
2616
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2617
+ VLOG(2).AtLocation(whence.file(), whence.line())
2618
+ << "seq[" << this << "]: poll step 5/9 gets "
2619
+ << (p != nullptr
2620
+ ? (PromiseResultTraits4::IsOk(*p)
2621
+ ? "ready"
2622
+ : absl::StrCat(
2623
+ "early-error:",
2624
+ PromiseResultTraits4::ErrorString(*p))
2625
+ .c_str())
2626
+ : "pending");
2627
2627
  }
2628
2628
  if (p == nullptr) return Pending{};
2629
2629
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -2639,23 +2639,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2639
2639
  }
2640
2640
  ABSL_FALLTHROUGH_INTENDED;
2641
2641
  case State::kState5: {
2642
- if (grpc_trace_promise_primitives.enabled()) {
2643
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2644
- "seq[%p]: begin poll step 6/9", this);
2642
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2643
+ VLOG(2).AtLocation(whence.file(), whence.line())
2644
+ << "seq[" << this << "]: begin poll step 6/9";
2645
2645
  }
2646
2646
  auto result = prior.prior.prior.current_promise();
2647
2647
  PromiseResult5* p = result.value_if_ready();
2648
- if (grpc_trace_promise_primitives.enabled()) {
2649
- gpr_log(
2650
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2651
- "seq[%p]: poll step 6/9 gets %s", this,
2652
- p != nullptr
2653
- ? (PromiseResultTraits5::IsOk(*p)
2654
- ? "ready"
2655
- : absl::StrCat("early-error:",
2656
- PromiseResultTraits5::ErrorString(*p))
2657
- .c_str())
2658
- : "pending");
2648
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2649
+ VLOG(2).AtLocation(whence.file(), whence.line())
2650
+ << "seq[" << this << "]: poll step 6/9 gets "
2651
+ << (p != nullptr
2652
+ ? (PromiseResultTraits5::IsOk(*p)
2653
+ ? "ready"
2654
+ : absl::StrCat(
2655
+ "early-error:",
2656
+ PromiseResultTraits5::ErrorString(*p))
2657
+ .c_str())
2658
+ : "pending");
2659
2659
  }
2660
2660
  if (p == nullptr) return Pending{};
2661
2661
  if (!PromiseResultTraits5::IsOk(*p)) {
@@ -2671,23 +2671,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2671
2671
  }
2672
2672
  ABSL_FALLTHROUGH_INTENDED;
2673
2673
  case State::kState6: {
2674
- if (grpc_trace_promise_primitives.enabled()) {
2675
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2676
- "seq[%p]: begin poll step 7/9", this);
2674
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2675
+ VLOG(2).AtLocation(whence.file(), whence.line())
2676
+ << "seq[" << this << "]: begin poll step 7/9";
2677
2677
  }
2678
2678
  auto result = prior.prior.current_promise();
2679
2679
  PromiseResult6* p = result.value_if_ready();
2680
- if (grpc_trace_promise_primitives.enabled()) {
2681
- gpr_log(
2682
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2683
- "seq[%p]: poll step 7/9 gets %s", this,
2684
- p != nullptr
2685
- ? (PromiseResultTraits6::IsOk(*p)
2686
- ? "ready"
2687
- : absl::StrCat("early-error:",
2688
- PromiseResultTraits6::ErrorString(*p))
2689
- .c_str())
2690
- : "pending");
2680
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2681
+ VLOG(2).AtLocation(whence.file(), whence.line())
2682
+ << "seq[" << this << "]: poll step 7/9 gets "
2683
+ << (p != nullptr
2684
+ ? (PromiseResultTraits6::IsOk(*p)
2685
+ ? "ready"
2686
+ : absl::StrCat(
2687
+ "early-error:",
2688
+ PromiseResultTraits6::ErrorString(*p))
2689
+ .c_str())
2690
+ : "pending");
2691
2691
  }
2692
2692
  if (p == nullptr) return Pending{};
2693
2693
  if (!PromiseResultTraits6::IsOk(*p)) {
@@ -2703,23 +2703,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2703
2703
  }
2704
2704
  ABSL_FALLTHROUGH_INTENDED;
2705
2705
  case State::kState7: {
2706
- if (grpc_trace_promise_primitives.enabled()) {
2707
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2708
- "seq[%p]: begin poll step 8/9", this);
2706
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2707
+ VLOG(2).AtLocation(whence.file(), whence.line())
2708
+ << "seq[" << this << "]: begin poll step 8/9";
2709
2709
  }
2710
2710
  auto result = prior.current_promise();
2711
2711
  PromiseResult7* p = result.value_if_ready();
2712
- if (grpc_trace_promise_primitives.enabled()) {
2713
- gpr_log(
2714
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2715
- "seq[%p]: poll step 8/9 gets %s", this,
2716
- p != nullptr
2717
- ? (PromiseResultTraits7::IsOk(*p)
2718
- ? "ready"
2719
- : absl::StrCat("early-error:",
2720
- PromiseResultTraits7::ErrorString(*p))
2721
- .c_str())
2722
- : "pending");
2712
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2713
+ VLOG(2).AtLocation(whence.file(), whence.line())
2714
+ << "seq[" << this << "]: poll step 8/9 gets "
2715
+ << (p != nullptr
2716
+ ? (PromiseResultTraits7::IsOk(*p)
2717
+ ? "ready"
2718
+ : absl::StrCat(
2719
+ "early-error:",
2720
+ PromiseResultTraits7::ErrorString(*p))
2721
+ .c_str())
2722
+ : "pending");
2723
2723
  }
2724
2724
  if (p == nullptr) return Pending{};
2725
2725
  if (!PromiseResultTraits7::IsOk(*p)) {
@@ -2736,15 +2736,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2736
2736
  ABSL_FALLTHROUGH_INTENDED;
2737
2737
  default:
2738
2738
  case State::kState8: {
2739
- if (grpc_trace_promise_primitives.enabled()) {
2740
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2741
- "seq[%p]: begin poll step 9/9", this);
2739
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2740
+ VLOG(2).AtLocation(whence.file(), whence.line())
2741
+ << "seq[" << this << "]: begin poll step 9/9";
2742
2742
  }
2743
2743
  auto result = current_promise();
2744
- if (grpc_trace_promise_primitives.enabled()) {
2745
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
2746
- "seq[%p]: poll step 9/9 gets %s", this,
2747
- result.ready() ? "ready" : "pending");
2744
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2745
+ VLOG(2).AtLocation(whence.file(), whence.line())
2746
+ << "seq[" << this << "]: poll step 9/9 gets "
2747
+ << (result.ready() ? "ready" : "pending");
2748
2748
  }
2749
2749
  auto* p = result.value_if_ready();
2750
2750
  if (p == nullptr) return Pending{};
@@ -2965,7 +2965,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
2965
2965
  }
2966
2966
  SeqState(const SeqState& other) noexcept
2967
2967
  : state(other.state), whence(other.whence) {
2968
- GPR_ASSERT(state == State::kState0);
2968
+ CHECK(state == State::kState0);
2969
2969
  Construct(&prior.current_promise, other.prior.current_promise);
2970
2970
  Construct(
2971
2971
  &prior.prior.prior.prior.prior.prior.prior.prior.prior.next_factory,
@@ -3076,24 +3076,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3076
3076
  Poll<Result> PollOnce() {
3077
3077
  switch (state) {
3078
3078
  case State::kState0: {
3079
- if (grpc_trace_promise_primitives.enabled()) {
3080
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3081
- "seq[%p]: begin poll step 1/10", this);
3079
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3080
+ VLOG(2).AtLocation(whence.file(), whence.line())
3081
+ << "seq[" << this << "]: begin poll step 1/10";
3082
3082
  }
3083
3083
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
3084
3084
  .current_promise();
3085
3085
  PromiseResult0* p = result.value_if_ready();
3086
- if (grpc_trace_promise_primitives.enabled()) {
3087
- gpr_log(
3088
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3089
- "seq[%p]: poll step 1/10 gets %s", this,
3090
- p != nullptr
3091
- ? (PromiseResultTraits0::IsOk(*p)
3092
- ? "ready"
3093
- : absl::StrCat("early-error:",
3094
- PromiseResultTraits0::ErrorString(*p))
3095
- .c_str())
3096
- : "pending");
3086
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3087
+ VLOG(2).AtLocation(whence.file(), whence.line())
3088
+ << "seq[" << this << "]: poll step 1/10 gets "
3089
+ << (p != nullptr
3090
+ ? (PromiseResultTraits0::IsOk(*p)
3091
+ ? "ready"
3092
+ : absl::StrCat(
3093
+ "early-error:",
3094
+ PromiseResultTraits0::ErrorString(*p))
3095
+ .c_str())
3096
+ : "pending");
3097
3097
  }
3098
3098
  if (p == nullptr) return Pending{};
3099
3099
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -3114,24 +3114,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3114
3114
  }
3115
3115
  ABSL_FALLTHROUGH_INTENDED;
3116
3116
  case State::kState1: {
3117
- if (grpc_trace_promise_primitives.enabled()) {
3118
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3119
- "seq[%p]: begin poll step 2/10", this);
3117
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3118
+ VLOG(2).AtLocation(whence.file(), whence.line())
3119
+ << "seq[" << this << "]: begin poll step 2/10";
3120
3120
  }
3121
3121
  auto result =
3122
3122
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
3123
3123
  PromiseResult1* p = result.value_if_ready();
3124
- if (grpc_trace_promise_primitives.enabled()) {
3125
- gpr_log(
3126
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3127
- "seq[%p]: poll step 2/10 gets %s", this,
3128
- p != nullptr
3129
- ? (PromiseResultTraits1::IsOk(*p)
3130
- ? "ready"
3131
- : absl::StrCat("early-error:",
3132
- PromiseResultTraits1::ErrorString(*p))
3133
- .c_str())
3134
- : "pending");
3124
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3125
+ VLOG(2).AtLocation(whence.file(), whence.line())
3126
+ << "seq[" << this << "]: poll step 2/10 gets "
3127
+ << (p != nullptr
3128
+ ? (PromiseResultTraits1::IsOk(*p)
3129
+ ? "ready"
3130
+ : absl::StrCat(
3131
+ "early-error:",
3132
+ PromiseResultTraits1::ErrorString(*p))
3133
+ .c_str())
3134
+ : "pending");
3135
3135
  }
3136
3136
  if (p == nullptr) return Pending{};
3137
3137
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -3150,24 +3150,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3150
3150
  }
3151
3151
  ABSL_FALLTHROUGH_INTENDED;
3152
3152
  case State::kState2: {
3153
- if (grpc_trace_promise_primitives.enabled()) {
3154
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3155
- "seq[%p]: begin poll step 3/10", this);
3153
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3154
+ VLOG(2).AtLocation(whence.file(), whence.line())
3155
+ << "seq[" << this << "]: begin poll step 3/10";
3156
3156
  }
3157
3157
  auto result =
3158
3158
  prior.prior.prior.prior.prior.prior.prior.current_promise();
3159
3159
  PromiseResult2* p = result.value_if_ready();
3160
- if (grpc_trace_promise_primitives.enabled()) {
3161
- gpr_log(
3162
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3163
- "seq[%p]: poll step 3/10 gets %s", this,
3164
- p != nullptr
3165
- ? (PromiseResultTraits2::IsOk(*p)
3166
- ? "ready"
3167
- : absl::StrCat("early-error:",
3168
- PromiseResultTraits2::ErrorString(*p))
3169
- .c_str())
3170
- : "pending");
3160
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3161
+ VLOG(2).AtLocation(whence.file(), whence.line())
3162
+ << "seq[" << this << "]: poll step 3/10 gets "
3163
+ << (p != nullptr
3164
+ ? (PromiseResultTraits2::IsOk(*p)
3165
+ ? "ready"
3166
+ : absl::StrCat(
3167
+ "early-error:",
3168
+ PromiseResultTraits2::ErrorString(*p))
3169
+ .c_str())
3170
+ : "pending");
3171
3171
  }
3172
3172
  if (p == nullptr) return Pending{};
3173
3173
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -3185,23 +3185,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3185
3185
  }
3186
3186
  ABSL_FALLTHROUGH_INTENDED;
3187
3187
  case State::kState3: {
3188
- if (grpc_trace_promise_primitives.enabled()) {
3189
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3190
- "seq[%p]: begin poll step 4/10", this);
3188
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3189
+ VLOG(2).AtLocation(whence.file(), whence.line())
3190
+ << "seq[" << this << "]: begin poll step 4/10";
3191
3191
  }
3192
3192
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
3193
3193
  PromiseResult3* p = result.value_if_ready();
3194
- if (grpc_trace_promise_primitives.enabled()) {
3195
- gpr_log(
3196
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3197
- "seq[%p]: poll step 4/10 gets %s", this,
3198
- p != nullptr
3199
- ? (PromiseResultTraits3::IsOk(*p)
3200
- ? "ready"
3201
- : absl::StrCat("early-error:",
3202
- PromiseResultTraits3::ErrorString(*p))
3203
- .c_str())
3204
- : "pending");
3194
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3195
+ VLOG(2).AtLocation(whence.file(), whence.line())
3196
+ << "seq[" << this << "]: poll step 4/10 gets "
3197
+ << (p != nullptr
3198
+ ? (PromiseResultTraits3::IsOk(*p)
3199
+ ? "ready"
3200
+ : absl::StrCat(
3201
+ "early-error:",
3202
+ PromiseResultTraits3::ErrorString(*p))
3203
+ .c_str())
3204
+ : "pending");
3205
3205
  }
3206
3206
  if (p == nullptr) return Pending{};
3207
3207
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -3218,23 +3218,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3218
3218
  }
3219
3219
  ABSL_FALLTHROUGH_INTENDED;
3220
3220
  case State::kState4: {
3221
- if (grpc_trace_promise_primitives.enabled()) {
3222
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3223
- "seq[%p]: begin poll step 5/10", this);
3221
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3222
+ VLOG(2).AtLocation(whence.file(), whence.line())
3223
+ << "seq[" << this << "]: begin poll step 5/10";
3224
3224
  }
3225
3225
  auto result = prior.prior.prior.prior.prior.current_promise();
3226
3226
  PromiseResult4* p = result.value_if_ready();
3227
- if (grpc_trace_promise_primitives.enabled()) {
3228
- gpr_log(
3229
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3230
- "seq[%p]: poll step 5/10 gets %s", this,
3231
- p != nullptr
3232
- ? (PromiseResultTraits4::IsOk(*p)
3233
- ? "ready"
3234
- : absl::StrCat("early-error:",
3235
- PromiseResultTraits4::ErrorString(*p))
3236
- .c_str())
3237
- : "pending");
3227
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3228
+ VLOG(2).AtLocation(whence.file(), whence.line())
3229
+ << "seq[" << this << "]: poll step 5/10 gets "
3230
+ << (p != nullptr
3231
+ ? (PromiseResultTraits4::IsOk(*p)
3232
+ ? "ready"
3233
+ : absl::StrCat(
3234
+ "early-error:",
3235
+ PromiseResultTraits4::ErrorString(*p))
3236
+ .c_str())
3237
+ : "pending");
3238
3238
  }
3239
3239
  if (p == nullptr) return Pending{};
3240
3240
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -3251,23 +3251,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3251
3251
  }
3252
3252
  ABSL_FALLTHROUGH_INTENDED;
3253
3253
  case State::kState5: {
3254
- if (grpc_trace_promise_primitives.enabled()) {
3255
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3256
- "seq[%p]: begin poll step 6/10", this);
3254
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3255
+ VLOG(2).AtLocation(whence.file(), whence.line())
3256
+ << "seq[" << this << "]: begin poll step 6/10";
3257
3257
  }
3258
3258
  auto result = prior.prior.prior.prior.current_promise();
3259
3259
  PromiseResult5* p = result.value_if_ready();
3260
- if (grpc_trace_promise_primitives.enabled()) {
3261
- gpr_log(
3262
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3263
- "seq[%p]: poll step 6/10 gets %s", this,
3264
- p != nullptr
3265
- ? (PromiseResultTraits5::IsOk(*p)
3266
- ? "ready"
3267
- : absl::StrCat("early-error:",
3268
- PromiseResultTraits5::ErrorString(*p))
3269
- .c_str())
3270
- : "pending");
3260
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3261
+ VLOG(2).AtLocation(whence.file(), whence.line())
3262
+ << "seq[" << this << "]: poll step 6/10 gets "
3263
+ << (p != nullptr
3264
+ ? (PromiseResultTraits5::IsOk(*p)
3265
+ ? "ready"
3266
+ : absl::StrCat(
3267
+ "early-error:",
3268
+ PromiseResultTraits5::ErrorString(*p))
3269
+ .c_str())
3270
+ : "pending");
3271
3271
  }
3272
3272
  if (p == nullptr) return Pending{};
3273
3273
  if (!PromiseResultTraits5::IsOk(*p)) {
@@ -3283,23 +3283,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3283
3283
  }
3284
3284
  ABSL_FALLTHROUGH_INTENDED;
3285
3285
  case State::kState6: {
3286
- if (grpc_trace_promise_primitives.enabled()) {
3287
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3288
- "seq[%p]: begin poll step 7/10", this);
3286
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3287
+ VLOG(2).AtLocation(whence.file(), whence.line())
3288
+ << "seq[" << this << "]: begin poll step 7/10";
3289
3289
  }
3290
3290
  auto result = prior.prior.prior.current_promise();
3291
3291
  PromiseResult6* p = result.value_if_ready();
3292
- if (grpc_trace_promise_primitives.enabled()) {
3293
- gpr_log(
3294
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3295
- "seq[%p]: poll step 7/10 gets %s", this,
3296
- p != nullptr
3297
- ? (PromiseResultTraits6::IsOk(*p)
3298
- ? "ready"
3299
- : absl::StrCat("early-error:",
3300
- PromiseResultTraits6::ErrorString(*p))
3301
- .c_str())
3302
- : "pending");
3292
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3293
+ VLOG(2).AtLocation(whence.file(), whence.line())
3294
+ << "seq[" << this << "]: poll step 7/10 gets "
3295
+ << (p != nullptr
3296
+ ? (PromiseResultTraits6::IsOk(*p)
3297
+ ? "ready"
3298
+ : absl::StrCat(
3299
+ "early-error:",
3300
+ PromiseResultTraits6::ErrorString(*p))
3301
+ .c_str())
3302
+ : "pending");
3303
3303
  }
3304
3304
  if (p == nullptr) return Pending{};
3305
3305
  if (!PromiseResultTraits6::IsOk(*p)) {
@@ -3315,23 +3315,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3315
3315
  }
3316
3316
  ABSL_FALLTHROUGH_INTENDED;
3317
3317
  case State::kState7: {
3318
- if (grpc_trace_promise_primitives.enabled()) {
3319
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3320
- "seq[%p]: begin poll step 8/10", this);
3318
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3319
+ VLOG(2).AtLocation(whence.file(), whence.line())
3320
+ << "seq[" << this << "]: begin poll step 8/10";
3321
3321
  }
3322
3322
  auto result = prior.prior.current_promise();
3323
3323
  PromiseResult7* p = result.value_if_ready();
3324
- if (grpc_trace_promise_primitives.enabled()) {
3325
- gpr_log(
3326
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3327
- "seq[%p]: poll step 8/10 gets %s", this,
3328
- p != nullptr
3329
- ? (PromiseResultTraits7::IsOk(*p)
3330
- ? "ready"
3331
- : absl::StrCat("early-error:",
3332
- PromiseResultTraits7::ErrorString(*p))
3333
- .c_str())
3334
- : "pending");
3324
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3325
+ VLOG(2).AtLocation(whence.file(), whence.line())
3326
+ << "seq[" << this << "]: poll step 8/10 gets "
3327
+ << (p != nullptr
3328
+ ? (PromiseResultTraits7::IsOk(*p)
3329
+ ? "ready"
3330
+ : absl::StrCat(
3331
+ "early-error:",
3332
+ PromiseResultTraits7::ErrorString(*p))
3333
+ .c_str())
3334
+ : "pending");
3335
3335
  }
3336
3336
  if (p == nullptr) return Pending{};
3337
3337
  if (!PromiseResultTraits7::IsOk(*p)) {
@@ -3347,23 +3347,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3347
3347
  }
3348
3348
  ABSL_FALLTHROUGH_INTENDED;
3349
3349
  case State::kState8: {
3350
- if (grpc_trace_promise_primitives.enabled()) {
3351
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3352
- "seq[%p]: begin poll step 9/10", this);
3350
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3351
+ VLOG(2).AtLocation(whence.file(), whence.line())
3352
+ << "seq[" << this << "]: begin poll step 9/10";
3353
3353
  }
3354
3354
  auto result = prior.current_promise();
3355
3355
  PromiseResult8* p = result.value_if_ready();
3356
- if (grpc_trace_promise_primitives.enabled()) {
3357
- gpr_log(
3358
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3359
- "seq[%p]: poll step 9/10 gets %s", this,
3360
- p != nullptr
3361
- ? (PromiseResultTraits8::IsOk(*p)
3362
- ? "ready"
3363
- : absl::StrCat("early-error:",
3364
- PromiseResultTraits8::ErrorString(*p))
3365
- .c_str())
3366
- : "pending");
3356
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3357
+ VLOG(2).AtLocation(whence.file(), whence.line())
3358
+ << "seq[" << this << "]: poll step 9/10 gets "
3359
+ << (p != nullptr
3360
+ ? (PromiseResultTraits8::IsOk(*p)
3361
+ ? "ready"
3362
+ : absl::StrCat(
3363
+ "early-error:",
3364
+ PromiseResultTraits8::ErrorString(*p))
3365
+ .c_str())
3366
+ : "pending");
3367
3367
  }
3368
3368
  if (p == nullptr) return Pending{};
3369
3369
  if (!PromiseResultTraits8::IsOk(*p)) {
@@ -3380,15 +3380,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3380
3380
  ABSL_FALLTHROUGH_INTENDED;
3381
3381
  default:
3382
3382
  case State::kState9: {
3383
- if (grpc_trace_promise_primitives.enabled()) {
3384
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3385
- "seq[%p]: begin poll step 10/10", this);
3383
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3384
+ VLOG(2).AtLocation(whence.file(), whence.line())
3385
+ << "seq[" << this << "]: begin poll step 10/10";
3386
3386
  }
3387
3387
  auto result = current_promise();
3388
- if (grpc_trace_promise_primitives.enabled()) {
3389
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3390
- "seq[%p]: poll step 10/10 gets %s", this,
3391
- result.ready() ? "ready" : "pending");
3388
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3389
+ VLOG(2).AtLocation(whence.file(), whence.line())
3390
+ << "seq[" << this << "]: poll step 10/10 gets "
3391
+ << (result.ready() ? "ready" : "pending");
3392
3392
  }
3393
3393
  auto* p = result.value_if_ready();
3394
3394
  if (p == nullptr) return Pending{};
@@ -3632,7 +3632,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3632
3632
  }
3633
3633
  SeqState(const SeqState& other) noexcept
3634
3634
  : state(other.state), whence(other.whence) {
3635
- GPR_ASSERT(state == State::kState0);
3635
+ CHECK(state == State::kState0);
3636
3636
  Construct(&prior.current_promise, other.prior.current_promise);
3637
3637
  Construct(&prior.prior.prior.prior.prior.prior.prior.prior.prior.prior
3638
3638
  .next_factory,
@@ -3758,24 +3758,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3758
3758
  Poll<Result> PollOnce() {
3759
3759
  switch (state) {
3760
3760
  case State::kState0: {
3761
- if (grpc_trace_promise_primitives.enabled()) {
3762
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3763
- "seq[%p]: begin poll step 1/11", this);
3761
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3762
+ VLOG(2).AtLocation(whence.file(), whence.line())
3763
+ << "seq[" << this << "]: begin poll step 1/11";
3764
3764
  }
3765
3765
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
3766
3766
  .prior.current_promise();
3767
3767
  PromiseResult0* p = result.value_if_ready();
3768
- if (grpc_trace_promise_primitives.enabled()) {
3769
- gpr_log(
3770
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3771
- "seq[%p]: poll step 1/11 gets %s", this,
3772
- p != nullptr
3773
- ? (PromiseResultTraits0::IsOk(*p)
3774
- ? "ready"
3775
- : absl::StrCat("early-error:",
3776
- PromiseResultTraits0::ErrorString(*p))
3777
- .c_str())
3778
- : "pending");
3768
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3769
+ VLOG(2).AtLocation(whence.file(), whence.line())
3770
+ << "seq[" << this << "]: poll step 1/11 gets "
3771
+ << (p != nullptr
3772
+ ? (PromiseResultTraits0::IsOk(*p)
3773
+ ? "ready"
3774
+ : absl::StrCat(
3775
+ "early-error:",
3776
+ PromiseResultTraits0::ErrorString(*p))
3777
+ .c_str())
3778
+ : "pending");
3779
3779
  }
3780
3780
  if (p == nullptr) return Pending{};
3781
3781
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -3797,24 +3797,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3797
3797
  }
3798
3798
  ABSL_FALLTHROUGH_INTENDED;
3799
3799
  case State::kState1: {
3800
- if (grpc_trace_promise_primitives.enabled()) {
3801
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3802
- "seq[%p]: begin poll step 2/11", this);
3800
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3801
+ VLOG(2).AtLocation(whence.file(), whence.line())
3802
+ << "seq[" << this << "]: begin poll step 2/11";
3803
3803
  }
3804
3804
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
3805
3805
  .current_promise();
3806
3806
  PromiseResult1* p = result.value_if_ready();
3807
- if (grpc_trace_promise_primitives.enabled()) {
3808
- gpr_log(
3809
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3810
- "seq[%p]: poll step 2/11 gets %s", this,
3811
- p != nullptr
3812
- ? (PromiseResultTraits1::IsOk(*p)
3813
- ? "ready"
3814
- : absl::StrCat("early-error:",
3815
- PromiseResultTraits1::ErrorString(*p))
3816
- .c_str())
3817
- : "pending");
3807
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3808
+ VLOG(2).AtLocation(whence.file(), whence.line())
3809
+ << "seq[" << this << "]: poll step 2/11 gets "
3810
+ << (p != nullptr
3811
+ ? (PromiseResultTraits1::IsOk(*p)
3812
+ ? "ready"
3813
+ : absl::StrCat(
3814
+ "early-error:",
3815
+ PromiseResultTraits1::ErrorString(*p))
3816
+ .c_str())
3817
+ : "pending");
3818
3818
  }
3819
3819
  if (p == nullptr) return Pending{};
3820
3820
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -3835,24 +3835,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3835
3835
  }
3836
3836
  ABSL_FALLTHROUGH_INTENDED;
3837
3837
  case State::kState2: {
3838
- if (grpc_trace_promise_primitives.enabled()) {
3839
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3840
- "seq[%p]: begin poll step 3/11", this);
3838
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3839
+ VLOG(2).AtLocation(whence.file(), whence.line())
3840
+ << "seq[" << this << "]: begin poll step 3/11";
3841
3841
  }
3842
3842
  auto result =
3843
3843
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
3844
3844
  PromiseResult2* p = result.value_if_ready();
3845
- if (grpc_trace_promise_primitives.enabled()) {
3846
- gpr_log(
3847
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3848
- "seq[%p]: poll step 3/11 gets %s", this,
3849
- p != nullptr
3850
- ? (PromiseResultTraits2::IsOk(*p)
3851
- ? "ready"
3852
- : absl::StrCat("early-error:",
3853
- PromiseResultTraits2::ErrorString(*p))
3854
- .c_str())
3855
- : "pending");
3845
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3846
+ VLOG(2).AtLocation(whence.file(), whence.line())
3847
+ << "seq[" << this << "]: poll step 3/11 gets "
3848
+ << (p != nullptr
3849
+ ? (PromiseResultTraits2::IsOk(*p)
3850
+ ? "ready"
3851
+ : absl::StrCat(
3852
+ "early-error:",
3853
+ PromiseResultTraits2::ErrorString(*p))
3854
+ .c_str())
3855
+ : "pending");
3856
3856
  }
3857
3857
  if (p == nullptr) return Pending{};
3858
3858
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -3871,24 +3871,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3871
3871
  }
3872
3872
  ABSL_FALLTHROUGH_INTENDED;
3873
3873
  case State::kState3: {
3874
- if (grpc_trace_promise_primitives.enabled()) {
3875
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3876
- "seq[%p]: begin poll step 4/11", this);
3874
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3875
+ VLOG(2).AtLocation(whence.file(), whence.line())
3876
+ << "seq[" << this << "]: begin poll step 4/11";
3877
3877
  }
3878
3878
  auto result =
3879
3879
  prior.prior.prior.prior.prior.prior.prior.current_promise();
3880
3880
  PromiseResult3* p = result.value_if_ready();
3881
- if (grpc_trace_promise_primitives.enabled()) {
3882
- gpr_log(
3883
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3884
- "seq[%p]: poll step 4/11 gets %s", this,
3885
- p != nullptr
3886
- ? (PromiseResultTraits3::IsOk(*p)
3887
- ? "ready"
3888
- : absl::StrCat("early-error:",
3889
- PromiseResultTraits3::ErrorString(*p))
3890
- .c_str())
3891
- : "pending");
3881
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3882
+ VLOG(2).AtLocation(whence.file(), whence.line())
3883
+ << "seq[" << this << "]: poll step 4/11 gets "
3884
+ << (p != nullptr
3885
+ ? (PromiseResultTraits3::IsOk(*p)
3886
+ ? "ready"
3887
+ : absl::StrCat(
3888
+ "early-error:",
3889
+ PromiseResultTraits3::ErrorString(*p))
3890
+ .c_str())
3891
+ : "pending");
3892
3892
  }
3893
3893
  if (p == nullptr) return Pending{};
3894
3894
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -3906,23 +3906,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3906
3906
  }
3907
3907
  ABSL_FALLTHROUGH_INTENDED;
3908
3908
  case State::kState4: {
3909
- if (grpc_trace_promise_primitives.enabled()) {
3910
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3911
- "seq[%p]: begin poll step 5/11", this);
3909
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3910
+ VLOG(2).AtLocation(whence.file(), whence.line())
3911
+ << "seq[" << this << "]: begin poll step 5/11";
3912
3912
  }
3913
3913
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
3914
3914
  PromiseResult4* p = result.value_if_ready();
3915
- if (grpc_trace_promise_primitives.enabled()) {
3916
- gpr_log(
3917
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3918
- "seq[%p]: poll step 5/11 gets %s", this,
3919
- p != nullptr
3920
- ? (PromiseResultTraits4::IsOk(*p)
3921
- ? "ready"
3922
- : absl::StrCat("early-error:",
3923
- PromiseResultTraits4::ErrorString(*p))
3924
- .c_str())
3925
- : "pending");
3915
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3916
+ VLOG(2).AtLocation(whence.file(), whence.line())
3917
+ << "seq[" << this << "]: poll step 5/11 gets "
3918
+ << (p != nullptr
3919
+ ? (PromiseResultTraits4::IsOk(*p)
3920
+ ? "ready"
3921
+ : absl::StrCat(
3922
+ "early-error:",
3923
+ PromiseResultTraits4::ErrorString(*p))
3924
+ .c_str())
3925
+ : "pending");
3926
3926
  }
3927
3927
  if (p == nullptr) return Pending{};
3928
3928
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -3939,23 +3939,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3939
3939
  }
3940
3940
  ABSL_FALLTHROUGH_INTENDED;
3941
3941
  case State::kState5: {
3942
- if (grpc_trace_promise_primitives.enabled()) {
3943
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3944
- "seq[%p]: begin poll step 6/11", this);
3942
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3943
+ VLOG(2).AtLocation(whence.file(), whence.line())
3944
+ << "seq[" << this << "]: begin poll step 6/11";
3945
3945
  }
3946
3946
  auto result = prior.prior.prior.prior.prior.current_promise();
3947
3947
  PromiseResult5* p = result.value_if_ready();
3948
- if (grpc_trace_promise_primitives.enabled()) {
3949
- gpr_log(
3950
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3951
- "seq[%p]: poll step 6/11 gets %s", this,
3952
- p != nullptr
3953
- ? (PromiseResultTraits5::IsOk(*p)
3954
- ? "ready"
3955
- : absl::StrCat("early-error:",
3956
- PromiseResultTraits5::ErrorString(*p))
3957
- .c_str())
3958
- : "pending");
3948
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3949
+ VLOG(2).AtLocation(whence.file(), whence.line())
3950
+ << "seq[" << this << "]: poll step 6/11 gets "
3951
+ << (p != nullptr
3952
+ ? (PromiseResultTraits5::IsOk(*p)
3953
+ ? "ready"
3954
+ : absl::StrCat(
3955
+ "early-error:",
3956
+ PromiseResultTraits5::ErrorString(*p))
3957
+ .c_str())
3958
+ : "pending");
3959
3959
  }
3960
3960
  if (p == nullptr) return Pending{};
3961
3961
  if (!PromiseResultTraits5::IsOk(*p)) {
@@ -3972,23 +3972,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3972
3972
  }
3973
3973
  ABSL_FALLTHROUGH_INTENDED;
3974
3974
  case State::kState6: {
3975
- if (grpc_trace_promise_primitives.enabled()) {
3976
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3977
- "seq[%p]: begin poll step 7/11", this);
3975
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3976
+ VLOG(2).AtLocation(whence.file(), whence.line())
3977
+ << "seq[" << this << "]: begin poll step 7/11";
3978
3978
  }
3979
3979
  auto result = prior.prior.prior.prior.current_promise();
3980
3980
  PromiseResult6* p = result.value_if_ready();
3981
- if (grpc_trace_promise_primitives.enabled()) {
3982
- gpr_log(
3983
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
3984
- "seq[%p]: poll step 7/11 gets %s", this,
3985
- p != nullptr
3986
- ? (PromiseResultTraits6::IsOk(*p)
3987
- ? "ready"
3988
- : absl::StrCat("early-error:",
3989
- PromiseResultTraits6::ErrorString(*p))
3990
- .c_str())
3991
- : "pending");
3981
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3982
+ VLOG(2).AtLocation(whence.file(), whence.line())
3983
+ << "seq[" << this << "]: poll step 7/11 gets "
3984
+ << (p != nullptr
3985
+ ? (PromiseResultTraits6::IsOk(*p)
3986
+ ? "ready"
3987
+ : absl::StrCat(
3988
+ "early-error:",
3989
+ PromiseResultTraits6::ErrorString(*p))
3990
+ .c_str())
3991
+ : "pending");
3992
3992
  }
3993
3993
  if (p == nullptr) return Pending{};
3994
3994
  if (!PromiseResultTraits6::IsOk(*p)) {
@@ -4004,23 +4004,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
4004
4004
  }
4005
4005
  ABSL_FALLTHROUGH_INTENDED;
4006
4006
  case State::kState7: {
4007
- if (grpc_trace_promise_primitives.enabled()) {
4008
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4009
- "seq[%p]: begin poll step 8/11", this);
4007
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4008
+ VLOG(2).AtLocation(whence.file(), whence.line())
4009
+ << "seq[" << this << "]: begin poll step 8/11";
4010
4010
  }
4011
4011
  auto result = prior.prior.prior.current_promise();
4012
4012
  PromiseResult7* p = result.value_if_ready();
4013
- if (grpc_trace_promise_primitives.enabled()) {
4014
- gpr_log(
4015
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4016
- "seq[%p]: poll step 8/11 gets %s", this,
4017
- p != nullptr
4018
- ? (PromiseResultTraits7::IsOk(*p)
4019
- ? "ready"
4020
- : absl::StrCat("early-error:",
4021
- PromiseResultTraits7::ErrorString(*p))
4022
- .c_str())
4023
- : "pending");
4013
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4014
+ VLOG(2).AtLocation(whence.file(), whence.line())
4015
+ << "seq[" << this << "]: poll step 8/11 gets "
4016
+ << (p != nullptr
4017
+ ? (PromiseResultTraits7::IsOk(*p)
4018
+ ? "ready"
4019
+ : absl::StrCat(
4020
+ "early-error:",
4021
+ PromiseResultTraits7::ErrorString(*p))
4022
+ .c_str())
4023
+ : "pending");
4024
4024
  }
4025
4025
  if (p == nullptr) return Pending{};
4026
4026
  if (!PromiseResultTraits7::IsOk(*p)) {
@@ -4036,23 +4036,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
4036
4036
  }
4037
4037
  ABSL_FALLTHROUGH_INTENDED;
4038
4038
  case State::kState8: {
4039
- if (grpc_trace_promise_primitives.enabled()) {
4040
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4041
- "seq[%p]: begin poll step 9/11", this);
4039
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4040
+ VLOG(2).AtLocation(whence.file(), whence.line())
4041
+ << "seq[" << this << "]: begin poll step 9/11";
4042
4042
  }
4043
4043
  auto result = prior.prior.current_promise();
4044
4044
  PromiseResult8* p = result.value_if_ready();
4045
- if (grpc_trace_promise_primitives.enabled()) {
4046
- gpr_log(
4047
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4048
- "seq[%p]: poll step 9/11 gets %s", this,
4049
- p != nullptr
4050
- ? (PromiseResultTraits8::IsOk(*p)
4051
- ? "ready"
4052
- : absl::StrCat("early-error:",
4053
- PromiseResultTraits8::ErrorString(*p))
4054
- .c_str())
4055
- : "pending");
4045
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4046
+ VLOG(2).AtLocation(whence.file(), whence.line())
4047
+ << "seq[" << this << "]: poll step 9/11 gets "
4048
+ << (p != nullptr
4049
+ ? (PromiseResultTraits8::IsOk(*p)
4050
+ ? "ready"
4051
+ : absl::StrCat(
4052
+ "early-error:",
4053
+ PromiseResultTraits8::ErrorString(*p))
4054
+ .c_str())
4055
+ : "pending");
4056
4056
  }
4057
4057
  if (p == nullptr) return Pending{};
4058
4058
  if (!PromiseResultTraits8::IsOk(*p)) {
@@ -4068,23 +4068,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
4068
4068
  }
4069
4069
  ABSL_FALLTHROUGH_INTENDED;
4070
4070
  case State::kState9: {
4071
- if (grpc_trace_promise_primitives.enabled()) {
4072
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4073
- "seq[%p]: begin poll step 10/11", this);
4071
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4072
+ VLOG(2).AtLocation(whence.file(), whence.line())
4073
+ << "seq[" << this << "]: begin poll step 10/11";
4074
4074
  }
4075
4075
  auto result = prior.current_promise();
4076
4076
  PromiseResult9* p = result.value_if_ready();
4077
- if (grpc_trace_promise_primitives.enabled()) {
4078
- gpr_log(
4079
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4080
- "seq[%p]: poll step 10/11 gets %s", this,
4081
- p != nullptr
4082
- ? (PromiseResultTraits9::IsOk(*p)
4083
- ? "ready"
4084
- : absl::StrCat("early-error:",
4085
- PromiseResultTraits9::ErrorString(*p))
4086
- .c_str())
4087
- : "pending");
4077
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4078
+ VLOG(2).AtLocation(whence.file(), whence.line())
4079
+ << "seq[" << this << "]: poll step 10/11 gets "
4080
+ << (p != nullptr
4081
+ ? (PromiseResultTraits9::IsOk(*p)
4082
+ ? "ready"
4083
+ : absl::StrCat(
4084
+ "early-error:",
4085
+ PromiseResultTraits9::ErrorString(*p))
4086
+ .c_str())
4087
+ : "pending");
4088
4088
  }
4089
4089
  if (p == nullptr) return Pending{};
4090
4090
  if (!PromiseResultTraits9::IsOk(*p)) {
@@ -4101,15 +4101,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
4101
4101
  ABSL_FALLTHROUGH_INTENDED;
4102
4102
  default:
4103
4103
  case State::kState10: {
4104
- if (grpc_trace_promise_primitives.enabled()) {
4105
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4106
- "seq[%p]: begin poll step 11/11", this);
4104
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4105
+ VLOG(2).AtLocation(whence.file(), whence.line())
4106
+ << "seq[" << this << "]: begin poll step 11/11";
4107
4107
  }
4108
4108
  auto result = current_promise();
4109
- if (grpc_trace_promise_primitives.enabled()) {
4110
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4111
- "seq[%p]: poll step 11/11 gets %s", this,
4112
- result.ready() ? "ready" : "pending");
4109
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4110
+ VLOG(2).AtLocation(whence.file(), whence.line())
4111
+ << "seq[" << this << "]: poll step 11/11 gets "
4112
+ << (result.ready() ? "ready" : "pending");
4113
4113
  }
4114
4114
  auto* p = result.value_if_ready();
4115
4115
  if (p == nullptr) return Pending{};
@@ -4376,7 +4376,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4376
4376
  }
4377
4377
  SeqState(const SeqState& other) noexcept
4378
4378
  : state(other.state), whence(other.whence) {
4379
- GPR_ASSERT(state == State::kState0);
4379
+ CHECK(state == State::kState0);
4380
4380
  Construct(&prior.current_promise, other.prior.current_promise);
4381
4381
  Construct(&prior.prior.prior.prior.prior.prior.prior.prior.prior.prior.prior
4382
4382
  .next_factory,
@@ -4517,24 +4517,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4517
4517
  Poll<Result> PollOnce() {
4518
4518
  switch (state) {
4519
4519
  case State::kState0: {
4520
- if (grpc_trace_promise_primitives.enabled()) {
4521
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4522
- "seq[%p]: begin poll step 1/12", this);
4520
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4521
+ VLOG(2).AtLocation(whence.file(), whence.line())
4522
+ << "seq[" << this << "]: begin poll step 1/12";
4523
4523
  }
4524
4524
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4525
4525
  .prior.prior.current_promise();
4526
4526
  PromiseResult0* p = result.value_if_ready();
4527
- if (grpc_trace_promise_primitives.enabled()) {
4528
- gpr_log(
4529
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4530
- "seq[%p]: poll step 1/12 gets %s", this,
4531
- p != nullptr
4532
- ? (PromiseResultTraits0::IsOk(*p)
4533
- ? "ready"
4534
- : absl::StrCat("early-error:",
4535
- PromiseResultTraits0::ErrorString(*p))
4536
- .c_str())
4537
- : "pending");
4527
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4528
+ VLOG(2).AtLocation(whence.file(), whence.line())
4529
+ << "seq[" << this << "]: poll step 1/12 gets "
4530
+ << (p != nullptr
4531
+ ? (PromiseResultTraits0::IsOk(*p)
4532
+ ? "ready"
4533
+ : absl::StrCat(
4534
+ "early-error:",
4535
+ PromiseResultTraits0::ErrorString(*p))
4536
+ .c_str())
4537
+ : "pending");
4538
4538
  }
4539
4539
  if (p == nullptr) return Pending{};
4540
4540
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -4556,24 +4556,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4556
4556
  }
4557
4557
  ABSL_FALLTHROUGH_INTENDED;
4558
4558
  case State::kState1: {
4559
- if (grpc_trace_promise_primitives.enabled()) {
4560
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4561
- "seq[%p]: begin poll step 2/12", this);
4559
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4560
+ VLOG(2).AtLocation(whence.file(), whence.line())
4561
+ << "seq[" << this << "]: begin poll step 2/12";
4562
4562
  }
4563
4563
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4564
4564
  .prior.current_promise();
4565
4565
  PromiseResult1* p = result.value_if_ready();
4566
- if (grpc_trace_promise_primitives.enabled()) {
4567
- gpr_log(
4568
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4569
- "seq[%p]: poll step 2/12 gets %s", this,
4570
- p != nullptr
4571
- ? (PromiseResultTraits1::IsOk(*p)
4572
- ? "ready"
4573
- : absl::StrCat("early-error:",
4574
- PromiseResultTraits1::ErrorString(*p))
4575
- .c_str())
4576
- : "pending");
4566
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4567
+ VLOG(2).AtLocation(whence.file(), whence.line())
4568
+ << "seq[" << this << "]: poll step 2/12 gets "
4569
+ << (p != nullptr
4570
+ ? (PromiseResultTraits1::IsOk(*p)
4571
+ ? "ready"
4572
+ : absl::StrCat(
4573
+ "early-error:",
4574
+ PromiseResultTraits1::ErrorString(*p))
4575
+ .c_str())
4576
+ : "pending");
4577
4577
  }
4578
4578
  if (p == nullptr) return Pending{};
4579
4579
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -4595,24 +4595,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4595
4595
  }
4596
4596
  ABSL_FALLTHROUGH_INTENDED;
4597
4597
  case State::kState2: {
4598
- if (grpc_trace_promise_primitives.enabled()) {
4599
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4600
- "seq[%p]: begin poll step 3/12", this);
4598
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4599
+ VLOG(2).AtLocation(whence.file(), whence.line())
4600
+ << "seq[" << this << "]: begin poll step 3/12";
4601
4601
  }
4602
4602
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4603
4603
  .current_promise();
4604
4604
  PromiseResult2* p = result.value_if_ready();
4605
- if (grpc_trace_promise_primitives.enabled()) {
4606
- gpr_log(
4607
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4608
- "seq[%p]: poll step 3/12 gets %s", this,
4609
- p != nullptr
4610
- ? (PromiseResultTraits2::IsOk(*p)
4611
- ? "ready"
4612
- : absl::StrCat("early-error:",
4613
- PromiseResultTraits2::ErrorString(*p))
4614
- .c_str())
4615
- : "pending");
4605
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4606
+ VLOG(2).AtLocation(whence.file(), whence.line())
4607
+ << "seq[" << this << "]: poll step 3/12 gets "
4608
+ << (p != nullptr
4609
+ ? (PromiseResultTraits2::IsOk(*p)
4610
+ ? "ready"
4611
+ : absl::StrCat(
4612
+ "early-error:",
4613
+ PromiseResultTraits2::ErrorString(*p))
4614
+ .c_str())
4615
+ : "pending");
4616
4616
  }
4617
4617
  if (p == nullptr) return Pending{};
4618
4618
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -4633,24 +4633,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4633
4633
  }
4634
4634
  ABSL_FALLTHROUGH_INTENDED;
4635
4635
  case State::kState3: {
4636
- if (grpc_trace_promise_primitives.enabled()) {
4637
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4638
- "seq[%p]: begin poll step 4/12", this);
4636
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4637
+ VLOG(2).AtLocation(whence.file(), whence.line())
4638
+ << "seq[" << this << "]: begin poll step 4/12";
4639
4639
  }
4640
4640
  auto result =
4641
4641
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
4642
4642
  PromiseResult3* p = result.value_if_ready();
4643
- if (grpc_trace_promise_primitives.enabled()) {
4644
- gpr_log(
4645
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4646
- "seq[%p]: poll step 4/12 gets %s", this,
4647
- p != nullptr
4648
- ? (PromiseResultTraits3::IsOk(*p)
4649
- ? "ready"
4650
- : absl::StrCat("early-error:",
4651
- PromiseResultTraits3::ErrorString(*p))
4652
- .c_str())
4653
- : "pending");
4643
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4644
+ VLOG(2).AtLocation(whence.file(), whence.line())
4645
+ << "seq[" << this << "]: poll step 4/12 gets "
4646
+ << (p != nullptr
4647
+ ? (PromiseResultTraits3::IsOk(*p)
4648
+ ? "ready"
4649
+ : absl::StrCat(
4650
+ "early-error:",
4651
+ PromiseResultTraits3::ErrorString(*p))
4652
+ .c_str())
4653
+ : "pending");
4654
4654
  }
4655
4655
  if (p == nullptr) return Pending{};
4656
4656
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -4669,24 +4669,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4669
4669
  }
4670
4670
  ABSL_FALLTHROUGH_INTENDED;
4671
4671
  case State::kState4: {
4672
- if (grpc_trace_promise_primitives.enabled()) {
4673
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4674
- "seq[%p]: begin poll step 5/12", this);
4672
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4673
+ VLOG(2).AtLocation(whence.file(), whence.line())
4674
+ << "seq[" << this << "]: begin poll step 5/12";
4675
4675
  }
4676
4676
  auto result =
4677
4677
  prior.prior.prior.prior.prior.prior.prior.current_promise();
4678
4678
  PromiseResult4* p = result.value_if_ready();
4679
- if (grpc_trace_promise_primitives.enabled()) {
4680
- gpr_log(
4681
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4682
- "seq[%p]: poll step 5/12 gets %s", this,
4683
- p != nullptr
4684
- ? (PromiseResultTraits4::IsOk(*p)
4685
- ? "ready"
4686
- : absl::StrCat("early-error:",
4687
- PromiseResultTraits4::ErrorString(*p))
4688
- .c_str())
4689
- : "pending");
4679
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4680
+ VLOG(2).AtLocation(whence.file(), whence.line())
4681
+ << "seq[" << this << "]: poll step 5/12 gets "
4682
+ << (p != nullptr
4683
+ ? (PromiseResultTraits4::IsOk(*p)
4684
+ ? "ready"
4685
+ : absl::StrCat(
4686
+ "early-error:",
4687
+ PromiseResultTraits4::ErrorString(*p))
4688
+ .c_str())
4689
+ : "pending");
4690
4690
  }
4691
4691
  if (p == nullptr) return Pending{};
4692
4692
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -4704,23 +4704,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4704
4704
  }
4705
4705
  ABSL_FALLTHROUGH_INTENDED;
4706
4706
  case State::kState5: {
4707
- if (grpc_trace_promise_primitives.enabled()) {
4708
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4709
- "seq[%p]: begin poll step 6/12", this);
4707
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4708
+ VLOG(2).AtLocation(whence.file(), whence.line())
4709
+ << "seq[" << this << "]: begin poll step 6/12";
4710
4710
  }
4711
4711
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
4712
4712
  PromiseResult5* p = result.value_if_ready();
4713
- if (grpc_trace_promise_primitives.enabled()) {
4714
- gpr_log(
4715
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4716
- "seq[%p]: poll step 6/12 gets %s", this,
4717
- p != nullptr
4718
- ? (PromiseResultTraits5::IsOk(*p)
4719
- ? "ready"
4720
- : absl::StrCat("early-error:",
4721
- PromiseResultTraits5::ErrorString(*p))
4722
- .c_str())
4723
- : "pending");
4713
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4714
+ VLOG(2).AtLocation(whence.file(), whence.line())
4715
+ << "seq[" << this << "]: poll step 6/12 gets "
4716
+ << (p != nullptr
4717
+ ? (PromiseResultTraits5::IsOk(*p)
4718
+ ? "ready"
4719
+ : absl::StrCat(
4720
+ "early-error:",
4721
+ PromiseResultTraits5::ErrorString(*p))
4722
+ .c_str())
4723
+ : "pending");
4724
4724
  }
4725
4725
  if (p == nullptr) return Pending{};
4726
4726
  if (!PromiseResultTraits5::IsOk(*p)) {
@@ -4737,23 +4737,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4737
4737
  }
4738
4738
  ABSL_FALLTHROUGH_INTENDED;
4739
4739
  case State::kState6: {
4740
- if (grpc_trace_promise_primitives.enabled()) {
4741
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4742
- "seq[%p]: begin poll step 7/12", this);
4740
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4741
+ VLOG(2).AtLocation(whence.file(), whence.line())
4742
+ << "seq[" << this << "]: begin poll step 7/12";
4743
4743
  }
4744
4744
  auto result = prior.prior.prior.prior.prior.current_promise();
4745
4745
  PromiseResult6* p = result.value_if_ready();
4746
- if (grpc_trace_promise_primitives.enabled()) {
4747
- gpr_log(
4748
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4749
- "seq[%p]: poll step 7/12 gets %s", this,
4750
- p != nullptr
4751
- ? (PromiseResultTraits6::IsOk(*p)
4752
- ? "ready"
4753
- : absl::StrCat("early-error:",
4754
- PromiseResultTraits6::ErrorString(*p))
4755
- .c_str())
4756
- : "pending");
4746
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4747
+ VLOG(2).AtLocation(whence.file(), whence.line())
4748
+ << "seq[" << this << "]: poll step 7/12 gets "
4749
+ << (p != nullptr
4750
+ ? (PromiseResultTraits6::IsOk(*p)
4751
+ ? "ready"
4752
+ : absl::StrCat(
4753
+ "early-error:",
4754
+ PromiseResultTraits6::ErrorString(*p))
4755
+ .c_str())
4756
+ : "pending");
4757
4757
  }
4758
4758
  if (p == nullptr) return Pending{};
4759
4759
  if (!PromiseResultTraits6::IsOk(*p)) {
@@ -4770,23 +4770,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4770
4770
  }
4771
4771
  ABSL_FALLTHROUGH_INTENDED;
4772
4772
  case State::kState7: {
4773
- if (grpc_trace_promise_primitives.enabled()) {
4774
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4775
- "seq[%p]: begin poll step 8/12", this);
4773
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4774
+ VLOG(2).AtLocation(whence.file(), whence.line())
4775
+ << "seq[" << this << "]: begin poll step 8/12";
4776
4776
  }
4777
4777
  auto result = prior.prior.prior.prior.current_promise();
4778
4778
  PromiseResult7* p = result.value_if_ready();
4779
- if (grpc_trace_promise_primitives.enabled()) {
4780
- gpr_log(
4781
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4782
- "seq[%p]: poll step 8/12 gets %s", this,
4783
- p != nullptr
4784
- ? (PromiseResultTraits7::IsOk(*p)
4785
- ? "ready"
4786
- : absl::StrCat("early-error:",
4787
- PromiseResultTraits7::ErrorString(*p))
4788
- .c_str())
4789
- : "pending");
4779
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4780
+ VLOG(2).AtLocation(whence.file(), whence.line())
4781
+ << "seq[" << this << "]: poll step 8/12 gets "
4782
+ << (p != nullptr
4783
+ ? (PromiseResultTraits7::IsOk(*p)
4784
+ ? "ready"
4785
+ : absl::StrCat(
4786
+ "early-error:",
4787
+ PromiseResultTraits7::ErrorString(*p))
4788
+ .c_str())
4789
+ : "pending");
4790
4790
  }
4791
4791
  if (p == nullptr) return Pending{};
4792
4792
  if (!PromiseResultTraits7::IsOk(*p)) {
@@ -4802,23 +4802,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4802
4802
  }
4803
4803
  ABSL_FALLTHROUGH_INTENDED;
4804
4804
  case State::kState8: {
4805
- if (grpc_trace_promise_primitives.enabled()) {
4806
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4807
- "seq[%p]: begin poll step 9/12", this);
4805
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4806
+ VLOG(2).AtLocation(whence.file(), whence.line())
4807
+ << "seq[" << this << "]: begin poll step 9/12";
4808
4808
  }
4809
4809
  auto result = prior.prior.prior.current_promise();
4810
4810
  PromiseResult8* p = result.value_if_ready();
4811
- if (grpc_trace_promise_primitives.enabled()) {
4812
- gpr_log(
4813
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4814
- "seq[%p]: poll step 9/12 gets %s", this,
4815
- p != nullptr
4816
- ? (PromiseResultTraits8::IsOk(*p)
4817
- ? "ready"
4818
- : absl::StrCat("early-error:",
4819
- PromiseResultTraits8::ErrorString(*p))
4820
- .c_str())
4821
- : "pending");
4811
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4812
+ VLOG(2).AtLocation(whence.file(), whence.line())
4813
+ << "seq[" << this << "]: poll step 9/12 gets "
4814
+ << (p != nullptr
4815
+ ? (PromiseResultTraits8::IsOk(*p)
4816
+ ? "ready"
4817
+ : absl::StrCat(
4818
+ "early-error:",
4819
+ PromiseResultTraits8::ErrorString(*p))
4820
+ .c_str())
4821
+ : "pending");
4822
4822
  }
4823
4823
  if (p == nullptr) return Pending{};
4824
4824
  if (!PromiseResultTraits8::IsOk(*p)) {
@@ -4834,23 +4834,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4834
4834
  }
4835
4835
  ABSL_FALLTHROUGH_INTENDED;
4836
4836
  case State::kState9: {
4837
- if (grpc_trace_promise_primitives.enabled()) {
4838
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4839
- "seq[%p]: begin poll step 10/12", this);
4837
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4838
+ VLOG(2).AtLocation(whence.file(), whence.line())
4839
+ << "seq[" << this << "]: begin poll step 10/12";
4840
4840
  }
4841
4841
  auto result = prior.prior.current_promise();
4842
4842
  PromiseResult9* p = result.value_if_ready();
4843
- if (grpc_trace_promise_primitives.enabled()) {
4844
- gpr_log(
4845
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4846
- "seq[%p]: poll step 10/12 gets %s", this,
4847
- p != nullptr
4848
- ? (PromiseResultTraits9::IsOk(*p)
4849
- ? "ready"
4850
- : absl::StrCat("early-error:",
4851
- PromiseResultTraits9::ErrorString(*p))
4852
- .c_str())
4853
- : "pending");
4843
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4844
+ VLOG(2).AtLocation(whence.file(), whence.line())
4845
+ << "seq[" << this << "]: poll step 10/12 gets "
4846
+ << (p != nullptr
4847
+ ? (PromiseResultTraits9::IsOk(*p)
4848
+ ? "ready"
4849
+ : absl::StrCat(
4850
+ "early-error:",
4851
+ PromiseResultTraits9::ErrorString(*p))
4852
+ .c_str())
4853
+ : "pending");
4854
4854
  }
4855
4855
  if (p == nullptr) return Pending{};
4856
4856
  if (!PromiseResultTraits9::IsOk(*p)) {
@@ -4866,23 +4866,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4866
4866
  }
4867
4867
  ABSL_FALLTHROUGH_INTENDED;
4868
4868
  case State::kState10: {
4869
- if (grpc_trace_promise_primitives.enabled()) {
4870
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4871
- "seq[%p]: begin poll step 11/12", this);
4869
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4870
+ VLOG(2).AtLocation(whence.file(), whence.line())
4871
+ << "seq[" << this << "]: begin poll step 11/12";
4872
4872
  }
4873
4873
  auto result = prior.current_promise();
4874
4874
  PromiseResult10* p = result.value_if_ready();
4875
- if (grpc_trace_promise_primitives.enabled()) {
4876
- gpr_log(
4877
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4878
- "seq[%p]: poll step 11/12 gets %s", this,
4879
- p != nullptr
4880
- ? (PromiseResultTraits10::IsOk(*p)
4881
- ? "ready"
4882
- : absl::StrCat("early-error:",
4883
- PromiseResultTraits10::ErrorString(*p))
4884
- .c_str())
4885
- : "pending");
4875
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4876
+ VLOG(2).AtLocation(whence.file(), whence.line())
4877
+ << "seq[" << this << "]: poll step 11/12 gets "
4878
+ << (p != nullptr
4879
+ ? (PromiseResultTraits10::IsOk(*p)
4880
+ ? "ready"
4881
+ : absl::StrCat(
4882
+ "early-error:",
4883
+ PromiseResultTraits10::ErrorString(*p))
4884
+ .c_str())
4885
+ : "pending");
4886
4886
  }
4887
4887
  if (p == nullptr) return Pending{};
4888
4888
  if (!PromiseResultTraits10::IsOk(*p)) {
@@ -4899,15 +4899,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4899
4899
  ABSL_FALLTHROUGH_INTENDED;
4900
4900
  default:
4901
4901
  case State::kState11: {
4902
- if (grpc_trace_promise_primitives.enabled()) {
4903
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4904
- "seq[%p]: begin poll step 12/12", this);
4902
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4903
+ VLOG(2).AtLocation(whence.file(), whence.line())
4904
+ << "seq[" << this << "]: begin poll step 12/12";
4905
4905
  }
4906
4906
  auto result = current_promise();
4907
- if (grpc_trace_promise_primitives.enabled()) {
4908
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
4909
- "seq[%p]: poll step 12/12 gets %s", this,
4910
- result.ready() ? "ready" : "pending");
4907
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4908
+ VLOG(2).AtLocation(whence.file(), whence.line())
4909
+ << "seq[" << this << "]: poll step 12/12 gets "
4910
+ << (result.ready() ? "ready" : "pending");
4911
4911
  }
4912
4912
  auto* p = result.value_if_ready();
4913
4913
  if (p == nullptr) return Pending{};
@@ -5199,7 +5199,7 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5199
5199
  }
5200
5200
  SeqState(const SeqState& other) noexcept
5201
5201
  : state(other.state), whence(other.whence) {
5202
- GPR_ASSERT(state == State::kState0);
5202
+ CHECK(state == State::kState0);
5203
5203
  Construct(&prior.current_promise, other.prior.current_promise);
5204
5204
  Construct(&prior.prior.prior.prior.prior.prior.prior.prior.prior.prior.prior
5205
5205
  .prior.next_factory,
@@ -5356,24 +5356,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5356
5356
  Poll<Result> PollOnce() {
5357
5357
  switch (state) {
5358
5358
  case State::kState0: {
5359
- if (grpc_trace_promise_primitives.enabled()) {
5360
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5361
- "seq[%p]: begin poll step 1/13", this);
5359
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5360
+ VLOG(2).AtLocation(whence.file(), whence.line())
5361
+ << "seq[" << this << "]: begin poll step 1/13";
5362
5362
  }
5363
5363
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
5364
5364
  .prior.prior.prior.current_promise();
5365
5365
  PromiseResult0* p = result.value_if_ready();
5366
- if (grpc_trace_promise_primitives.enabled()) {
5367
- gpr_log(
5368
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5369
- "seq[%p]: poll step 1/13 gets %s", this,
5370
- p != nullptr
5371
- ? (PromiseResultTraits0::IsOk(*p)
5372
- ? "ready"
5373
- : absl::StrCat("early-error:",
5374
- PromiseResultTraits0::ErrorString(*p))
5375
- .c_str())
5376
- : "pending");
5366
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5367
+ VLOG(2).AtLocation(whence.file(), whence.line())
5368
+ << "seq[" << this << "]: poll step 1/13 gets "
5369
+ << (p != nullptr
5370
+ ? (PromiseResultTraits0::IsOk(*p)
5371
+ ? "ready"
5372
+ : absl::StrCat(
5373
+ "early-error:",
5374
+ PromiseResultTraits0::ErrorString(*p))
5375
+ .c_str())
5376
+ : "pending");
5377
5377
  }
5378
5378
  if (p == nullptr) return Pending{};
5379
5379
  if (!PromiseResultTraits0::IsOk(*p)) {
@@ -5395,24 +5395,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5395
5395
  }
5396
5396
  ABSL_FALLTHROUGH_INTENDED;
5397
5397
  case State::kState1: {
5398
- if (grpc_trace_promise_primitives.enabled()) {
5399
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5400
- "seq[%p]: begin poll step 2/13", this);
5398
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5399
+ VLOG(2).AtLocation(whence.file(), whence.line())
5400
+ << "seq[" << this << "]: begin poll step 2/13";
5401
5401
  }
5402
5402
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
5403
5403
  .prior.prior.current_promise();
5404
5404
  PromiseResult1* p = result.value_if_ready();
5405
- if (grpc_trace_promise_primitives.enabled()) {
5406
- gpr_log(
5407
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5408
- "seq[%p]: poll step 2/13 gets %s", this,
5409
- p != nullptr
5410
- ? (PromiseResultTraits1::IsOk(*p)
5411
- ? "ready"
5412
- : absl::StrCat("early-error:",
5413
- PromiseResultTraits1::ErrorString(*p))
5414
- .c_str())
5415
- : "pending");
5405
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5406
+ VLOG(2).AtLocation(whence.file(), whence.line())
5407
+ << "seq[" << this << "]: poll step 2/13 gets "
5408
+ << (p != nullptr
5409
+ ? (PromiseResultTraits1::IsOk(*p)
5410
+ ? "ready"
5411
+ : absl::StrCat(
5412
+ "early-error:",
5413
+ PromiseResultTraits1::ErrorString(*p))
5414
+ .c_str())
5415
+ : "pending");
5416
5416
  }
5417
5417
  if (p == nullptr) return Pending{};
5418
5418
  if (!PromiseResultTraits1::IsOk(*p)) {
@@ -5434,24 +5434,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5434
5434
  }
5435
5435
  ABSL_FALLTHROUGH_INTENDED;
5436
5436
  case State::kState2: {
5437
- if (grpc_trace_promise_primitives.enabled()) {
5438
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5439
- "seq[%p]: begin poll step 3/13", this);
5437
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5438
+ VLOG(2).AtLocation(whence.file(), whence.line())
5439
+ << "seq[" << this << "]: begin poll step 3/13";
5440
5440
  }
5441
5441
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
5442
5442
  .prior.current_promise();
5443
5443
  PromiseResult2* p = result.value_if_ready();
5444
- if (grpc_trace_promise_primitives.enabled()) {
5445
- gpr_log(
5446
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5447
- "seq[%p]: poll step 3/13 gets %s", this,
5448
- p != nullptr
5449
- ? (PromiseResultTraits2::IsOk(*p)
5450
- ? "ready"
5451
- : absl::StrCat("early-error:",
5452
- PromiseResultTraits2::ErrorString(*p))
5453
- .c_str())
5454
- : "pending");
5444
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5445
+ VLOG(2).AtLocation(whence.file(), whence.line())
5446
+ << "seq[" << this << "]: poll step 3/13 gets "
5447
+ << (p != nullptr
5448
+ ? (PromiseResultTraits2::IsOk(*p)
5449
+ ? "ready"
5450
+ : absl::StrCat(
5451
+ "early-error:",
5452
+ PromiseResultTraits2::ErrorString(*p))
5453
+ .c_str())
5454
+ : "pending");
5455
5455
  }
5456
5456
  if (p == nullptr) return Pending{};
5457
5457
  if (!PromiseResultTraits2::IsOk(*p)) {
@@ -5473,24 +5473,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5473
5473
  }
5474
5474
  ABSL_FALLTHROUGH_INTENDED;
5475
5475
  case State::kState3: {
5476
- if (grpc_trace_promise_primitives.enabled()) {
5477
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5478
- "seq[%p]: begin poll step 4/13", this);
5476
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5477
+ VLOG(2).AtLocation(whence.file(), whence.line())
5478
+ << "seq[" << this << "]: begin poll step 4/13";
5479
5479
  }
5480
5480
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
5481
5481
  .current_promise();
5482
5482
  PromiseResult3* p = result.value_if_ready();
5483
- if (grpc_trace_promise_primitives.enabled()) {
5484
- gpr_log(
5485
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5486
- "seq[%p]: poll step 4/13 gets %s", this,
5487
- p != nullptr
5488
- ? (PromiseResultTraits3::IsOk(*p)
5489
- ? "ready"
5490
- : absl::StrCat("early-error:",
5491
- PromiseResultTraits3::ErrorString(*p))
5492
- .c_str())
5493
- : "pending");
5483
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5484
+ VLOG(2).AtLocation(whence.file(), whence.line())
5485
+ << "seq[" << this << "]: poll step 4/13 gets "
5486
+ << (p != nullptr
5487
+ ? (PromiseResultTraits3::IsOk(*p)
5488
+ ? "ready"
5489
+ : absl::StrCat(
5490
+ "early-error:",
5491
+ PromiseResultTraits3::ErrorString(*p))
5492
+ .c_str())
5493
+ : "pending");
5494
5494
  }
5495
5495
  if (p == nullptr) return Pending{};
5496
5496
  if (!PromiseResultTraits3::IsOk(*p)) {
@@ -5511,24 +5511,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5511
5511
  }
5512
5512
  ABSL_FALLTHROUGH_INTENDED;
5513
5513
  case State::kState4: {
5514
- if (grpc_trace_promise_primitives.enabled()) {
5515
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5516
- "seq[%p]: begin poll step 5/13", this);
5514
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5515
+ VLOG(2).AtLocation(whence.file(), whence.line())
5516
+ << "seq[" << this << "]: begin poll step 5/13";
5517
5517
  }
5518
5518
  auto result =
5519
5519
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
5520
5520
  PromiseResult4* p = result.value_if_ready();
5521
- if (grpc_trace_promise_primitives.enabled()) {
5522
- gpr_log(
5523
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5524
- "seq[%p]: poll step 5/13 gets %s", this,
5525
- p != nullptr
5526
- ? (PromiseResultTraits4::IsOk(*p)
5527
- ? "ready"
5528
- : absl::StrCat("early-error:",
5529
- PromiseResultTraits4::ErrorString(*p))
5530
- .c_str())
5531
- : "pending");
5521
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5522
+ VLOG(2).AtLocation(whence.file(), whence.line())
5523
+ << "seq[" << this << "]: poll step 5/13 gets "
5524
+ << (p != nullptr
5525
+ ? (PromiseResultTraits4::IsOk(*p)
5526
+ ? "ready"
5527
+ : absl::StrCat(
5528
+ "early-error:",
5529
+ PromiseResultTraits4::ErrorString(*p))
5530
+ .c_str())
5531
+ : "pending");
5532
5532
  }
5533
5533
  if (p == nullptr) return Pending{};
5534
5534
  if (!PromiseResultTraits4::IsOk(*p)) {
@@ -5547,24 +5547,24 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5547
5547
  }
5548
5548
  ABSL_FALLTHROUGH_INTENDED;
5549
5549
  case State::kState5: {
5550
- if (grpc_trace_promise_primitives.enabled()) {
5551
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5552
- "seq[%p]: begin poll step 6/13", this);
5550
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5551
+ VLOG(2).AtLocation(whence.file(), whence.line())
5552
+ << "seq[" << this << "]: begin poll step 6/13";
5553
5553
  }
5554
5554
  auto result =
5555
5555
  prior.prior.prior.prior.prior.prior.prior.current_promise();
5556
5556
  PromiseResult5* p = result.value_if_ready();
5557
- if (grpc_trace_promise_primitives.enabled()) {
5558
- gpr_log(
5559
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5560
- "seq[%p]: poll step 6/13 gets %s", this,
5561
- p != nullptr
5562
- ? (PromiseResultTraits5::IsOk(*p)
5563
- ? "ready"
5564
- : absl::StrCat("early-error:",
5565
- PromiseResultTraits5::ErrorString(*p))
5566
- .c_str())
5567
- : "pending");
5557
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5558
+ VLOG(2).AtLocation(whence.file(), whence.line())
5559
+ << "seq[" << this << "]: poll step 6/13 gets "
5560
+ << (p != nullptr
5561
+ ? (PromiseResultTraits5::IsOk(*p)
5562
+ ? "ready"
5563
+ : absl::StrCat(
5564
+ "early-error:",
5565
+ PromiseResultTraits5::ErrorString(*p))
5566
+ .c_str())
5567
+ : "pending");
5568
5568
  }
5569
5569
  if (p == nullptr) return Pending{};
5570
5570
  if (!PromiseResultTraits5::IsOk(*p)) {
@@ -5582,23 +5582,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5582
5582
  }
5583
5583
  ABSL_FALLTHROUGH_INTENDED;
5584
5584
  case State::kState6: {
5585
- if (grpc_trace_promise_primitives.enabled()) {
5586
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5587
- "seq[%p]: begin poll step 7/13", this);
5585
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5586
+ VLOG(2).AtLocation(whence.file(), whence.line())
5587
+ << "seq[" << this << "]: begin poll step 7/13";
5588
5588
  }
5589
5589
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
5590
5590
  PromiseResult6* p = result.value_if_ready();
5591
- if (grpc_trace_promise_primitives.enabled()) {
5592
- gpr_log(
5593
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5594
- "seq[%p]: poll step 7/13 gets %s", this,
5595
- p != nullptr
5596
- ? (PromiseResultTraits6::IsOk(*p)
5597
- ? "ready"
5598
- : absl::StrCat("early-error:",
5599
- PromiseResultTraits6::ErrorString(*p))
5600
- .c_str())
5601
- : "pending");
5591
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5592
+ VLOG(2).AtLocation(whence.file(), whence.line())
5593
+ << "seq[" << this << "]: poll step 7/13 gets "
5594
+ << (p != nullptr
5595
+ ? (PromiseResultTraits6::IsOk(*p)
5596
+ ? "ready"
5597
+ : absl::StrCat(
5598
+ "early-error:",
5599
+ PromiseResultTraits6::ErrorString(*p))
5600
+ .c_str())
5601
+ : "pending");
5602
5602
  }
5603
5603
  if (p == nullptr) return Pending{};
5604
5604
  if (!PromiseResultTraits6::IsOk(*p)) {
@@ -5615,23 +5615,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5615
5615
  }
5616
5616
  ABSL_FALLTHROUGH_INTENDED;
5617
5617
  case State::kState7: {
5618
- if (grpc_trace_promise_primitives.enabled()) {
5619
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5620
- "seq[%p]: begin poll step 8/13", this);
5618
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5619
+ VLOG(2).AtLocation(whence.file(), whence.line())
5620
+ << "seq[" << this << "]: begin poll step 8/13";
5621
5621
  }
5622
5622
  auto result = prior.prior.prior.prior.prior.current_promise();
5623
5623
  PromiseResult7* p = result.value_if_ready();
5624
- if (grpc_trace_promise_primitives.enabled()) {
5625
- gpr_log(
5626
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5627
- "seq[%p]: poll step 8/13 gets %s", this,
5628
- p != nullptr
5629
- ? (PromiseResultTraits7::IsOk(*p)
5630
- ? "ready"
5631
- : absl::StrCat("early-error:",
5632
- PromiseResultTraits7::ErrorString(*p))
5633
- .c_str())
5634
- : "pending");
5624
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5625
+ VLOG(2).AtLocation(whence.file(), whence.line())
5626
+ << "seq[" << this << "]: poll step 8/13 gets "
5627
+ << (p != nullptr
5628
+ ? (PromiseResultTraits7::IsOk(*p)
5629
+ ? "ready"
5630
+ : absl::StrCat(
5631
+ "early-error:",
5632
+ PromiseResultTraits7::ErrorString(*p))
5633
+ .c_str())
5634
+ : "pending");
5635
5635
  }
5636
5636
  if (p == nullptr) return Pending{};
5637
5637
  if (!PromiseResultTraits7::IsOk(*p)) {
@@ -5648,23 +5648,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5648
5648
  }
5649
5649
  ABSL_FALLTHROUGH_INTENDED;
5650
5650
  case State::kState8: {
5651
- if (grpc_trace_promise_primitives.enabled()) {
5652
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5653
- "seq[%p]: begin poll step 9/13", this);
5651
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5652
+ VLOG(2).AtLocation(whence.file(), whence.line())
5653
+ << "seq[" << this << "]: begin poll step 9/13";
5654
5654
  }
5655
5655
  auto result = prior.prior.prior.prior.current_promise();
5656
5656
  PromiseResult8* p = result.value_if_ready();
5657
- if (grpc_trace_promise_primitives.enabled()) {
5658
- gpr_log(
5659
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5660
- "seq[%p]: poll step 9/13 gets %s", this,
5661
- p != nullptr
5662
- ? (PromiseResultTraits8::IsOk(*p)
5663
- ? "ready"
5664
- : absl::StrCat("early-error:",
5665
- PromiseResultTraits8::ErrorString(*p))
5666
- .c_str())
5667
- : "pending");
5657
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5658
+ VLOG(2).AtLocation(whence.file(), whence.line())
5659
+ << "seq[" << this << "]: poll step 9/13 gets "
5660
+ << (p != nullptr
5661
+ ? (PromiseResultTraits8::IsOk(*p)
5662
+ ? "ready"
5663
+ : absl::StrCat(
5664
+ "early-error:",
5665
+ PromiseResultTraits8::ErrorString(*p))
5666
+ .c_str())
5667
+ : "pending");
5668
5668
  }
5669
5669
  if (p == nullptr) return Pending{};
5670
5670
  if (!PromiseResultTraits8::IsOk(*p)) {
@@ -5680,23 +5680,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5680
5680
  }
5681
5681
  ABSL_FALLTHROUGH_INTENDED;
5682
5682
  case State::kState9: {
5683
- if (grpc_trace_promise_primitives.enabled()) {
5684
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5685
- "seq[%p]: begin poll step 10/13", this);
5683
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5684
+ VLOG(2).AtLocation(whence.file(), whence.line())
5685
+ << "seq[" << this << "]: begin poll step 10/13";
5686
5686
  }
5687
5687
  auto result = prior.prior.prior.current_promise();
5688
5688
  PromiseResult9* p = result.value_if_ready();
5689
- if (grpc_trace_promise_primitives.enabled()) {
5690
- gpr_log(
5691
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5692
- "seq[%p]: poll step 10/13 gets %s", this,
5693
- p != nullptr
5694
- ? (PromiseResultTraits9::IsOk(*p)
5695
- ? "ready"
5696
- : absl::StrCat("early-error:",
5697
- PromiseResultTraits9::ErrorString(*p))
5698
- .c_str())
5699
- : "pending");
5689
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5690
+ VLOG(2).AtLocation(whence.file(), whence.line())
5691
+ << "seq[" << this << "]: poll step 10/13 gets "
5692
+ << (p != nullptr
5693
+ ? (PromiseResultTraits9::IsOk(*p)
5694
+ ? "ready"
5695
+ : absl::StrCat(
5696
+ "early-error:",
5697
+ PromiseResultTraits9::ErrorString(*p))
5698
+ .c_str())
5699
+ : "pending");
5700
5700
  }
5701
5701
  if (p == nullptr) return Pending{};
5702
5702
  if (!PromiseResultTraits9::IsOk(*p)) {
@@ -5712,23 +5712,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5712
5712
  }
5713
5713
  ABSL_FALLTHROUGH_INTENDED;
5714
5714
  case State::kState10: {
5715
- if (grpc_trace_promise_primitives.enabled()) {
5716
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5717
- "seq[%p]: begin poll step 11/13", this);
5715
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5716
+ VLOG(2).AtLocation(whence.file(), whence.line())
5717
+ << "seq[" << this << "]: begin poll step 11/13";
5718
5718
  }
5719
5719
  auto result = prior.prior.current_promise();
5720
5720
  PromiseResult10* p = result.value_if_ready();
5721
- if (grpc_trace_promise_primitives.enabled()) {
5722
- gpr_log(
5723
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5724
- "seq[%p]: poll step 11/13 gets %s", this,
5725
- p != nullptr
5726
- ? (PromiseResultTraits10::IsOk(*p)
5727
- ? "ready"
5728
- : absl::StrCat("early-error:",
5729
- PromiseResultTraits10::ErrorString(*p))
5730
- .c_str())
5731
- : "pending");
5721
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5722
+ VLOG(2).AtLocation(whence.file(), whence.line())
5723
+ << "seq[" << this << "]: poll step 11/13 gets "
5724
+ << (p != nullptr
5725
+ ? (PromiseResultTraits10::IsOk(*p)
5726
+ ? "ready"
5727
+ : absl::StrCat(
5728
+ "early-error:",
5729
+ PromiseResultTraits10::ErrorString(*p))
5730
+ .c_str())
5731
+ : "pending");
5732
5732
  }
5733
5733
  if (p == nullptr) return Pending{};
5734
5734
  if (!PromiseResultTraits10::IsOk(*p)) {
@@ -5744,23 +5744,23 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5744
5744
  }
5745
5745
  ABSL_FALLTHROUGH_INTENDED;
5746
5746
  case State::kState11: {
5747
- if (grpc_trace_promise_primitives.enabled()) {
5748
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5749
- "seq[%p]: begin poll step 12/13", this);
5747
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5748
+ VLOG(2).AtLocation(whence.file(), whence.line())
5749
+ << "seq[" << this << "]: begin poll step 12/13";
5750
5750
  }
5751
5751
  auto result = prior.current_promise();
5752
5752
  PromiseResult11* p = result.value_if_ready();
5753
- if (grpc_trace_promise_primitives.enabled()) {
5754
- gpr_log(
5755
- whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5756
- "seq[%p]: poll step 12/13 gets %s", this,
5757
- p != nullptr
5758
- ? (PromiseResultTraits11::IsOk(*p)
5759
- ? "ready"
5760
- : absl::StrCat("early-error:",
5761
- PromiseResultTraits11::ErrorString(*p))
5762
- .c_str())
5763
- : "pending");
5753
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5754
+ VLOG(2).AtLocation(whence.file(), whence.line())
5755
+ << "seq[" << this << "]: poll step 12/13 gets "
5756
+ << (p != nullptr
5757
+ ? (PromiseResultTraits11::IsOk(*p)
5758
+ ? "ready"
5759
+ : absl::StrCat(
5760
+ "early-error:",
5761
+ PromiseResultTraits11::ErrorString(*p))
5762
+ .c_str())
5763
+ : "pending");
5764
5764
  }
5765
5765
  if (p == nullptr) return Pending{};
5766
5766
  if (!PromiseResultTraits11::IsOk(*p)) {
@@ -5777,15 +5777,15 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5777
5777
  ABSL_FALLTHROUGH_INTENDED;
5778
5778
  default:
5779
5779
  case State::kState12: {
5780
- if (grpc_trace_promise_primitives.enabled()) {
5781
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5782
- "seq[%p]: begin poll step 13/13", this);
5780
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5781
+ VLOG(2).AtLocation(whence.file(), whence.line())
5782
+ << "seq[" << this << "]: begin poll step 13/13";
5783
5783
  }
5784
5784
  auto result = current_promise();
5785
- if (grpc_trace_promise_primitives.enabled()) {
5786
- gpr_log(whence.file(), whence.line(), GPR_LOG_SEVERITY_DEBUG,
5787
- "seq[%p]: poll step 13/13 gets %s", this,
5788
- result.ready() ? "ready" : "pending");
5785
+ if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5786
+ VLOG(2).AtLocation(whence.file(), whence.line())
5787
+ << "seq[" << this << "]: poll step 13/13 gets "
5788
+ << (result.ready() ? "ready" : "pending");
5789
5789
  }
5790
5790
  auto* p = result.value_if_ready();
5791
5791
  if (p == nullptr) return Pending{};