grpc 1.64.0.pre1 → 1.65.0.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (622) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +57 -58
  3. data/include/grpc/event_engine/event_engine.h +13 -6
  4. data/include/grpc/impl/channel_arg_names.h +7 -3
  5. data/include/grpc/module.modulemap +1 -0
  6. data/include/grpc/passive_listener.h +62 -0
  7. data/include/grpc/support/log.h +1 -6
  8. data/include/grpc/support/port_platform.h +3 -0
  9. data/src/core/channelz/channel_trace.cc +1 -1
  10. data/src/core/channelz/channel_trace.h +1 -1
  11. data/src/core/channelz/channelz.cc +3 -3
  12. data/src/core/channelz/channelz.h +7 -7
  13. data/src/core/channelz/channelz_registry.cc +4 -3
  14. data/src/core/client_channel/backup_poller.cc +4 -5
  15. data/src/core/client_channel/client_channel.cc +1324 -0
  16. data/src/core/client_channel/client_channel.h +243 -0
  17. data/src/core/client_channel/client_channel_filter.cc +266 -709
  18. data/src/core/client_channel/client_channel_filter.h +11 -64
  19. data/src/core/client_channel/client_channel_internal.h +16 -5
  20. data/src/core/client_channel/client_channel_plugin.cc +1 -14
  21. data/src/core/client_channel/client_channel_service_config.h +3 -3
  22. data/src/core/client_channel/config_selector.cc +1 -1
  23. data/src/core/client_channel/config_selector.h +1 -1
  24. data/src/core/client_channel/dynamic_filters.cc +3 -3
  25. data/src/core/client_channel/dynamic_filters.h +1 -3
  26. data/src/core/client_channel/load_balanced_call_destination.cc +336 -0
  27. data/src/core/client_channel/load_balanced_call_destination.h +49 -0
  28. data/src/core/client_channel/retry_filter.cc +2 -9
  29. data/src/core/client_channel/retry_filter.h +2 -7
  30. data/src/core/client_channel/retry_filter_legacy_call_data.cc +65 -72
  31. data/src/core/client_channel/retry_filter_legacy_call_data.h +0 -2
  32. data/src/core/client_channel/retry_service_config.cc +4 -5
  33. data/src/core/client_channel/retry_service_config.h +3 -3
  34. data/src/core/client_channel/subchannel.cc +220 -112
  35. data/src/core/client_channel/subchannel.h +31 -18
  36. data/src/core/client_channel/subchannel_pool_interface.cc +0 -2
  37. data/src/core/client_channel/subchannel_pool_interface.h +2 -4
  38. data/src/core/client_channel/subchannel_stream_client.cc +36 -49
  39. data/src/core/client_channel/subchannel_stream_client.h +2 -4
  40. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +7 -10
  41. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +1 -0
  42. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +7 -0
  43. data/src/core/ext/filters/census/grpc_context.cc +2 -4
  44. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +8 -15
  45. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +2 -0
  46. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +3 -7
  47. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +1 -0
  48. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
  49. data/src/core/ext/filters/http/client/http_client_filter.cc +1 -0
  50. data/src/core/ext/filters/http/client/http_client_filter.h +1 -0
  51. data/src/core/ext/filters/http/client_authority_filter.cc +1 -0
  52. data/src/core/ext/filters/http/client_authority_filter.h +1 -0
  53. data/src/core/ext/filters/http/message_compress/compression_filter.cc +10 -15
  54. data/src/core/ext/filters/http/message_compress/compression_filter.h +2 -0
  55. data/src/core/ext/filters/http/server/http_server_filter.cc +2 -2
  56. data/src/core/ext/filters/http/server/http_server_filter.h +1 -0
  57. data/src/core/ext/filters/message_size/message_size_filter.cc +6 -9
  58. data/src/core/ext/filters/message_size/message_size_filter.h +6 -6
  59. data/src/core/ext/filters/rbac/rbac_filter.cc +2 -5
  60. data/src/core/ext/filters/rbac/rbac_filter.h +1 -0
  61. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -2
  62. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +1 -1
  63. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +2 -6
  64. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +1 -0
  65. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
  66. data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -1
  67. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +8 -25
  68. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -5
  69. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +223 -148
  70. data/src/core/ext/transport/chttp2/server/chttp2_server.h +33 -0
  71. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +130 -99
  72. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +8 -8
  73. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +1 -1
  74. data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -4
  75. data/src/core/ext/transport/chttp2/transport/flow_control.h +0 -2
  76. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -6
  77. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +1 -2
  78. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +9 -5
  79. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +5 -4
  80. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +9 -2
  81. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +5 -7
  82. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +1 -1
  83. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +3 -8
  84. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -1
  85. data/src/core/ext/transport/chttp2/transport/http2_settings.h +1 -1
  86. data/src/core/ext/transport/chttp2/transport/internal.h +22 -14
  87. data/src/core/ext/transport/chttp2/transport/parsing.cc +15 -25
  88. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +0 -2
  89. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +0 -2
  90. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +29 -13
  91. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +5 -4
  92. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +3 -5
  93. data/src/core/ext/transport/chttp2/transport/writing.cc +24 -25
  94. data/src/core/ext/transport/inproc/inproc_transport.cc +39 -23
  95. data/src/core/ext/transport/inproc/inproc_transport.h +1 -3
  96. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +13 -15
  97. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +0 -2
  98. data/src/core/handshaker/handshaker.cc +6 -14
  99. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +9 -17
  100. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +3 -2
  101. data/src/core/handshaker/security/secure_endpoint.cc +38 -32
  102. data/src/core/handshaker/security/secure_endpoint.h +0 -2
  103. data/src/core/handshaker/security/security_handshaker.cc +25 -37
  104. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +2 -1
  105. data/src/core/lib/address_utils/parse_address.cc +27 -39
  106. data/src/core/lib/address_utils/sockaddr_utils.cc +5 -6
  107. data/src/core/lib/avl/avl.h +1 -1
  108. data/src/core/lib/channel/channel_args.cc +13 -17
  109. data/src/core/lib/channel/channel_args.h +19 -8
  110. data/src/core/lib/channel/channel_stack.cc +5 -63
  111. data/src/core/lib/channel/channel_stack.h +13 -37
  112. data/src/core/lib/channel/channel_stack_builder.h +0 -5
  113. data/src/core/lib/channel/channel_stack_builder_impl.cc +0 -142
  114. data/src/core/lib/channel/channel_stack_builder_impl.h +0 -2
  115. data/src/core/lib/channel/connected_channel.cc +37 -676
  116. data/src/core/lib/channel/promise_based_filter.cc +41 -47
  117. data/src/core/lib/channel/promise_based_filter.h +124 -477
  118. data/src/core/lib/channel/status_util.cc +1 -1
  119. data/src/core/lib/compression/compression.cc +1 -1
  120. data/src/core/lib/compression/message_compress.cc +6 -6
  121. data/src/core/lib/config/config_vars.cc +2 -7
  122. data/src/core/lib/config/config_vars.h +1 -5
  123. data/src/core/lib/debug/event_log.h +1 -1
  124. data/src/core/lib/debug/trace.cc +43 -59
  125. data/src/core/lib/debug/trace.h +2 -97
  126. data/src/core/lib/debug/trace_flags.cc +255 -0
  127. data/src/core/lib/debug/trace_flags.h +133 -0
  128. data/src/core/lib/debug/trace_impl.h +115 -0
  129. data/src/core/lib/event_engine/ares_resolver.cc +5 -7
  130. data/src/core/lib/event_engine/ares_resolver.h +1 -3
  131. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +1 -1
  132. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +17 -22
  133. data/src/core/lib/event_engine/event_engine.cc +29 -4
  134. data/src/core/lib/event_engine/extensions/supports_fd.h +7 -0
  135. data/src/core/lib/event_engine/extensions/tcp_trace.h +43 -0
  136. data/src/core/lib/event_engine/forkable.cc +4 -5
  137. data/src/core/lib/event_engine/forkable.h +0 -11
  138. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +10 -11
  139. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +4 -3
  140. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +1 -1
  141. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +19 -33
  142. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +3 -2
  143. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +24 -7
  144. data/src/core/lib/event_engine/posix_engine/posix_engine.h +2 -0
  145. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +14 -16
  146. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +18 -22
  147. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +13 -17
  148. data/src/core/lib/event_engine/posix_engine/timer.cc +1 -1
  149. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +4 -6
  150. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +2 -1
  151. data/src/core/lib/event_engine/shim.cc +1 -1
  152. data/src/core/lib/event_engine/tcp_socket_utils.cc +6 -8
  153. data/src/core/lib/event_engine/thread_local.h +1 -1
  154. data/src/core/lib/event_engine/thread_pool/thread_count.h +1 -1
  155. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +19 -21
  156. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +3 -6
  157. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +14 -13
  158. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +4 -3
  159. data/src/core/lib/event_engine/trace.h +6 -17
  160. data/src/core/lib/event_engine/windows/iocp.h +1 -1
  161. data/src/core/lib/event_engine/windows/win_socket.cc +23 -17
  162. data/src/core/lib/event_engine/windows/win_socket.h +4 -5
  163. data/src/core/lib/event_engine/windows/windows_endpoint.cc +6 -9
  164. data/src/core/lib/event_engine/windows/windows_engine.cc +201 -87
  165. data/src/core/lib/event_engine/windows/windows_engine.h +136 -25
  166. data/src/core/lib/event_engine/windows/windows_listener.cc +12 -23
  167. data/src/core/lib/experiments/experiments.cc +35 -151
  168. data/src/core/lib/experiments/experiments.h +12 -45
  169. data/src/core/lib/gprpp/bitset.h +1 -1
  170. data/src/core/lib/gprpp/crash.cc +2 -3
  171. data/src/core/lib/gprpp/dual_ref_counted.h +45 -33
  172. data/src/core/lib/gprpp/dump_args.cc +54 -0
  173. data/src/core/lib/gprpp/dump_args.h +69 -0
  174. data/src/core/lib/gprpp/glob.cc +70 -0
  175. data/src/core/lib/gprpp/glob.h +29 -0
  176. data/src/core/lib/gprpp/per_cpu.cc +1 -1
  177. data/src/core/lib/gprpp/posix/stat.cc +3 -4
  178. data/src/core/lib/gprpp/posix/thd.cc +8 -9
  179. data/src/core/lib/gprpp/ref_counted.h +30 -22
  180. data/src/core/lib/gprpp/single_set_ptr.h +5 -3
  181. data/src/core/lib/gprpp/status_helper.cc +11 -30
  182. data/src/core/lib/gprpp/status_helper.h +3 -31
  183. data/src/core/lib/gprpp/time.cc +3 -4
  184. data/src/core/lib/gprpp/time.h +3 -2
  185. data/src/core/lib/gprpp/unique_type_name.h +1 -1
  186. data/src/core/lib/gprpp/validation_errors.cc +10 -1
  187. data/src/core/lib/gprpp/validation_errors.h +11 -0
  188. data/src/core/lib/gprpp/windows/stat.cc +3 -4
  189. data/src/core/lib/gprpp/windows/thd.cc +3 -2
  190. data/src/core/lib/gprpp/work_serializer.cc +48 -57
  191. data/src/core/lib/iomgr/buffer_list.cc +4 -2
  192. data/src/core/lib/iomgr/call_combiner.cc +18 -27
  193. data/src/core/lib/iomgr/call_combiner.h +1 -3
  194. data/src/core/lib/iomgr/cfstream_handle.cc +4 -6
  195. data/src/core/lib/iomgr/closure.h +2 -4
  196. data/src/core/lib/iomgr/combiner.cc +6 -8
  197. data/src/core/lib/iomgr/combiner.h +0 -2
  198. data/src/core/lib/iomgr/endpoint.cc +0 -6
  199. data/src/core/lib/iomgr/endpoint.h +0 -2
  200. data/src/core/lib/iomgr/endpoint_cfstream.cc +19 -41
  201. data/src/core/lib/iomgr/endpoint_pair_posix.cc +1 -1
  202. data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -6
  203. data/src/core/lib/iomgr/error.cc +13 -21
  204. data/src/core/lib/iomgr/error.h +1 -1
  205. data/src/core/lib/iomgr/ev_apple.cc +3 -5
  206. data/src/core/lib/iomgr/ev_epoll1_linux.cc +43 -42
  207. data/src/core/lib/iomgr/ev_poll_posix.cc +38 -29
  208. data/src/core/lib/iomgr/ev_posix.cc +8 -9
  209. data/src/core/lib/iomgr/ev_posix.h +10 -7
  210. data/src/core/lib/iomgr/event_engine_shims/closure.cc +2 -2
  211. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +14 -28
  212. data/src/core/lib/iomgr/exec_ctx.cc +2 -2
  213. data/src/core/lib/iomgr/exec_ctx.h +1 -1
  214. data/src/core/lib/iomgr/executor.cc +6 -15
  215. data/src/core/lib/iomgr/executor.h +1 -1
  216. data/src/core/lib/iomgr/fork_posix.cc +8 -10
  217. data/src/core/lib/iomgr/fork_windows.cc +3 -1
  218. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +2 -3
  219. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +3 -5
  220. data/src/core/lib/iomgr/internal_errqueue.cc +4 -2
  221. data/src/core/lib/iomgr/iocp_windows.cc +4 -3
  222. data/src/core/lib/iomgr/iomgr.cc +13 -17
  223. data/src/core/lib/iomgr/lockfree_event.cc +3 -5
  224. data/src/core/lib/iomgr/pollset.h +0 -2
  225. data/src/core/lib/iomgr/pollset_windows.cc +0 -2
  226. data/src/core/lib/iomgr/resolve_address_posix.cc +7 -14
  227. data/src/core/lib/iomgr/resolve_address_windows.cc +1 -1
  228. data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
  229. data/src/core/lib/iomgr/socket_mutator.cc +1 -1
  230. data/src/core/lib/iomgr/socket_utils_common_posix.cc +11 -17
  231. data/src/core/lib/iomgr/socket_windows.cc +4 -6
  232. data/src/core/lib/iomgr/tcp_client_cfstream.cc +3 -5
  233. data/src/core/lib/iomgr/tcp_client_posix.cc +9 -15
  234. data/src/core/lib/iomgr/tcp_client_windows.cc +2 -4
  235. data/src/core/lib/iomgr/tcp_posix.cc +57 -84
  236. data/src/core/lib/iomgr/tcp_posix.h +0 -2
  237. data/src/core/lib/iomgr/tcp_server_posix.cc +3 -3
  238. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +4 -6
  239. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +7 -7
  240. data/src/core/lib/iomgr/tcp_server_windows.cc +10 -16
  241. data/src/core/lib/iomgr/tcp_windows.cc +25 -41
  242. data/src/core/lib/iomgr/timer_generic.cc +17 -20
  243. data/src/core/lib/iomgr/timer_heap.cc +1 -1
  244. data/src/core/lib/iomgr/timer_manager.cc +17 -30
  245. data/src/core/lib/iomgr/unix_sockets_posix.cc +1 -1
  246. data/src/core/lib/iomgr/vsock.cc +1 -1
  247. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +3 -3
  248. data/src/core/lib/promise/activity.h +27 -4
  249. data/src/core/lib/promise/cancel_callback.h +24 -0
  250. data/src/core/lib/promise/context.h +11 -0
  251. data/src/core/lib/promise/detail/basic_seq.h +1 -2
  252. data/src/core/lib/promise/detail/join_state.h +354 -398
  253. data/src/core/lib/promise/detail/promise_like.h +13 -6
  254. data/src/core/lib/promise/detail/seq_state.h +1178 -1178
  255. data/src/core/lib/promise/for_each.h +6 -6
  256. data/src/core/lib/promise/interceptor_list.h +6 -7
  257. data/src/core/lib/promise/latch.h +9 -9
  258. data/src/core/lib/promise/map.h +17 -0
  259. data/src/core/lib/promise/observable.h +182 -0
  260. data/src/core/lib/promise/party.cc +7 -8
  261. data/src/core/lib/promise/party.h +10 -8
  262. data/src/core/lib/promise/pipe.h +16 -35
  263. data/src/core/lib/promise/promise.h +1 -0
  264. data/src/core/lib/promise/status_flag.h +2 -0
  265. data/src/core/lib/resource_quota/arena.cc +56 -79
  266. data/src/core/lib/resource_quota/arena.h +118 -209
  267. data/src/core/lib/resource_quota/memory_quota.cc +12 -13
  268. data/src/core/lib/resource_quota/memory_quota.h +2 -3
  269. data/src/core/lib/resource_quota/periodic_update.cc +1 -1
  270. data/src/core/lib/resource_quota/resource_quota.h +1 -1
  271. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
  272. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
  273. data/src/core/lib/security/authorization/evaluate_args.cc +6 -8
  274. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +5 -6
  275. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +1 -0
  276. data/src/core/lib/security/authorization/matchers.cc +3 -3
  277. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +2 -2
  278. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +2 -3
  279. data/src/core/lib/security/context/security_context.cc +12 -13
  280. data/src/core/lib/security/context/security_context.h +31 -8
  281. data/src/core/lib/security/credentials/alts/alts_credentials.h +1 -1
  282. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +3 -1
  283. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +2 -3
  284. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +5 -5
  285. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +3 -3
  286. data/src/core/lib/security/credentials/call_creds_util.cc +2 -1
  287. data/src/core/lib/security/credentials/channel_creds_registry.h +2 -2
  288. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +5 -3
  289. data/src/core/lib/security/credentials/composite/composite_credentials.h +1 -1
  290. data/src/core/lib/security/credentials/credentials.cc +6 -6
  291. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +4 -4
  292. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +2 -2
  293. data/src/core/lib/security/credentials/external/external_account_credentials.cc +9 -11
  294. data/src/core/lib/security/credentials/external/external_account_credentials.h +3 -3
  295. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +2 -2
  296. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +4 -4
  297. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -1
  298. data/src/core/lib/security/credentials/fake/fake_credentials.h +1 -1
  299. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +3 -3
  300. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +11 -11
  301. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +1 -1
  302. data/src/core/lib/security/credentials/iam/iam_credentials.h +1 -1
  303. data/src/core/lib/security/credentials/jwt/json_token.cc +14 -15
  304. data/src/core/lib/security/credentials/jwt/json_token.h +1 -1
  305. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +6 -5
  306. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +1 -1
  307. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +50 -54
  308. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
  309. data/src/core/lib/security/credentials/local/local_credentials.h +1 -1
  310. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +12 -11
  311. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +4 -4
  312. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +6 -7
  313. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +1 -3
  314. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +15 -21
  315. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +1 -1
  316. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +21 -30
  317. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +1 -1
  318. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +1 -1
  319. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +4 -4
  320. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +3 -5
  321. data/src/core/lib/security/credentials/tls/tls_credentials.cc +14 -16
  322. data/src/core/lib/security/credentials/tls/tls_utils.cc +4 -4
  323. data/src/core/lib/security/credentials/xds/xds_credentials.cc +1 -1
  324. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +13 -16
  325. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +15 -12
  326. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +6 -6
  327. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +1 -1
  328. data/src/core/lib/security/security_connector/local/local_security_connector.cc +8 -12
  329. data/src/core/lib/security/security_connector/security_connector.cc +1 -4
  330. data/src/core/lib/security/security_connector/security_connector.h +1 -3
  331. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +17 -19
  332. data/src/core/lib/security/security_connector/ssl_utils.cc +19 -21
  333. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +29 -40
  334. data/src/core/lib/security/transport/auth_filters.h +1 -0
  335. data/src/core/lib/security/transport/client_auth_filter.cc +7 -13
  336. data/src/core/lib/security/transport/server_auth_filter.cc +3 -8
  337. data/src/core/lib/security/util/json_util.h +1 -1
  338. data/src/core/lib/slice/slice.h +1 -1
  339. data/src/core/lib/slice/slice_refcount.h +2 -4
  340. data/src/core/lib/slice/slice_string_helpers.cc +1 -1
  341. data/src/core/lib/surface/api_trace.h +1 -3
  342. data/src/core/lib/surface/call.cc +64 -3739
  343. data/src/core/lib/surface/call.h +41 -143
  344. data/src/core/lib/surface/call_log_batch.cc +1 -1
  345. data/src/core/lib/surface/call_utils.cc +276 -0
  346. data/src/core/lib/surface/call_utils.h +449 -0
  347. data/src/core/lib/surface/channel.cc +8 -3
  348. data/src/core/lib/surface/channel.h +10 -7
  349. data/src/core/lib/surface/channel_create.cc +14 -6
  350. data/src/core/lib/surface/channel_create.h +3 -2
  351. data/src/core/lib/surface/channel_init.cc +21 -77
  352. data/src/core/lib/surface/channel_init.h +19 -97
  353. data/src/core/lib/surface/client_call.cc +419 -0
  354. data/src/core/lib/surface/client_call.h +180 -0
  355. data/src/core/lib/surface/completion_queue.cc +28 -33
  356. data/src/core/lib/surface/completion_queue.h +0 -8
  357. data/src/core/lib/surface/filter_stack_call.cc +1157 -0
  358. data/src/core/lib/surface/filter_stack_call.h +369 -0
  359. data/src/core/lib/surface/init.cc +7 -6
  360. data/src/core/lib/surface/lame_client.cc +1 -1
  361. data/src/core/lib/surface/legacy_channel.cc +43 -30
  362. data/src/core/lib/surface/legacy_channel.h +9 -18
  363. data/src/core/lib/surface/server_call.cc +222 -0
  364. data/src/core/lib/surface/server_call.h +167 -0
  365. data/src/core/lib/surface/version.cc +2 -2
  366. data/src/core/lib/transport/bdp_estimator.cc +3 -5
  367. data/src/core/lib/transport/bdp_estimator.h +2 -4
  368. data/src/core/lib/transport/call_arena_allocator.h +9 -7
  369. data/src/core/lib/transport/call_destination.h +76 -0
  370. data/src/core/lib/transport/call_filters.cc +28 -10
  371. data/src/core/lib/transport/call_filters.h +128 -22
  372. data/src/core/lib/transport/call_spine.cc +5 -6
  373. data/src/core/lib/transport/call_spine.h +159 -334
  374. data/src/core/lib/transport/connectivity_state.cc +8 -10
  375. data/src/core/lib/transport/connectivity_state.h +0 -2
  376. data/src/core/lib/transport/interception_chain.cc +155 -0
  377. data/src/core/lib/transport/interception_chain.h +236 -0
  378. data/src/core/lib/transport/metadata_batch.h +10 -1
  379. data/src/core/lib/transport/metadata_info.h +1 -1
  380. data/src/core/lib/transport/transport.cc +3 -6
  381. data/src/core/lib/transport/transport.h +42 -39
  382. data/src/core/load_balancing/child_policy_handler.cc +8 -8
  383. data/src/core/load_balancing/endpoint_list.cc +5 -5
  384. data/src/core/load_balancing/endpoint_list.h +1 -1
  385. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +1 -0
  386. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +1 -0
  387. data/src/core/load_balancing/grpclb/grpclb.cc +25 -29
  388. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +1 -1
  389. data/src/core/load_balancing/grpclb/load_balancer_api.cc +3 -4
  390. data/src/core/load_balancing/health_check_client.cc +10 -13
  391. data/src/core/load_balancing/lb_policy.cc +5 -8
  392. data/src/core/load_balancing/lb_policy.h +19 -3
  393. data/src/core/load_balancing/lb_policy_factory.h +1 -1
  394. data/src/core/load_balancing/lb_policy_registry.cc +2 -3
  395. data/src/core/load_balancing/lb_policy_registry.h +1 -1
  396. data/src/core/load_balancing/oob_backend_metric.cc +2 -4
  397. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +33 -35
  398. data/src/core/load_balancing/outlier_detection/outlier_detection.h +3 -3
  399. data/src/core/load_balancing/pick_first/pick_first.cc +65 -65
  400. data/src/core/load_balancing/priority/priority.cc +26 -28
  401. data/src/core/load_balancing/ring_hash/ring_hash.cc +11 -13
  402. data/src/core/load_balancing/ring_hash/ring_hash.h +3 -3
  403. data/src/core/load_balancing/rls/rls.cc +82 -82
  404. data/src/core/load_balancing/round_robin/round_robin.cc +17 -20
  405. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +54 -43
  406. data/src/core/load_balancing/weighted_target/weighted_target.cc +21 -24
  407. data/src/core/load_balancing/xds/cds.cc +14 -16
  408. data/src/core/load_balancing/xds/xds_cluster_impl.cc +16 -18
  409. data/src/core/load_balancing/xds/xds_cluster_manager.cc +15 -17
  410. data/src/core/load_balancing/xds/xds_override_host.cc +40 -41
  411. data/src/core/load_balancing/xds/xds_override_host.h +3 -3
  412. data/src/core/load_balancing/xds/xds_wrr_locality.cc +10 -12
  413. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -1
  414. data/src/core/resolver/binder/binder_resolver.cc +3 -2
  415. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +3 -2
  416. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +1 -1
  417. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +7 -14
  418. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +1 -5
  419. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  420. data/src/core/resolver/dns/dns_resolver_plugin.cc +6 -5
  421. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +4 -9
  422. data/src/core/resolver/dns/event_engine/service_config_helper.cc +5 -5
  423. data/src/core/resolver/dns/native/dns_resolver.cc +8 -9
  424. data/src/core/resolver/endpoint_addresses.cc +1 -1
  425. data/src/core/resolver/fake/fake_resolver.cc +1 -1
  426. data/src/core/resolver/fake/fake_resolver.h +1 -1
  427. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +13 -14
  428. data/src/core/resolver/polling_resolver.cc +30 -35
  429. data/src/core/resolver/resolver.cc +2 -6
  430. data/src/core/resolver/resolver.h +0 -2
  431. data/src/core/resolver/resolver_registry.cc +6 -8
  432. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +3 -3
  433. data/src/core/resolver/xds/xds_dependency_manager.cc +22 -23
  434. data/src/core/resolver/xds/xds_resolver.cc +13 -15
  435. data/src/core/server/server.cc +269 -389
  436. data/src/core/server/server.h +37 -19
  437. data/src/core/server/server_call_tracer_filter.cc +7 -14
  438. data/src/core/server/server_config_selector.h +1 -1
  439. data/src/core/server/server_config_selector_filter.cc +3 -3
  440. data/src/core/server/server_interface.h +2 -0
  441. data/src/core/server/xds_channel_stack_modifier.cc +1 -1
  442. data/src/core/server/xds_channel_stack_modifier.h +1 -1
  443. data/src/core/server/xds_server_config_fetcher.cc +1 -4
  444. data/src/core/service_config/service_config.h +1 -1
  445. data/src/core/service_config/service_config_call_data.h +13 -11
  446. data/src/core/service_config/service_config_channel_arg_filter.cc +6 -4
  447. data/src/core/service_config/service_config_impl.cc +5 -5
  448. data/src/core/service_config/service_config_impl.h +1 -1
  449. data/src/core/service_config/service_config_parser.cc +3 -6
  450. data/src/core/service_config/service_config_parser.h +1 -1
  451. data/src/core/{lib/channel → telemetry}/call_tracer.cc +20 -30
  452. data/src/core/{lib/channel → telemetry}/call_tracer.h +32 -9
  453. data/src/core/{lib/debug → telemetry}/histogram_view.cc +1 -1
  454. data/src/core/{lib/debug → telemetry}/histogram_view.h +3 -3
  455. data/src/core/telemetry/metrics.cc +178 -0
  456. data/src/core/telemetry/metrics.h +562 -0
  457. data/src/core/{lib/debug → telemetry}/stats.cc +1 -1
  458. data/src/core/{lib/debug → telemetry}/stats.h +5 -5
  459. data/src/core/{lib/debug → telemetry}/stats_data.cc +1 -1
  460. data/src/core/{lib/debug → telemetry}/stats_data.h +4 -4
  461. data/src/core/{lib/channel → telemetry}/tcp_tracer.h +3 -3
  462. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +12 -13
  463. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +25 -27
  464. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +32 -33
  465. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -1
  466. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -1
  467. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +5 -4
  468. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +5 -3
  469. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +1 -1
  470. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +4 -3
  471. data/src/core/tsi/fake_transport_security.cc +14 -17
  472. data/src/core/tsi/local_transport_security.cc +6 -5
  473. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +4 -4
  474. data/src/core/tsi/ssl_transport_security.cc +76 -81
  475. data/src/core/tsi/ssl_transport_security_utils.cc +74 -18
  476. data/src/core/tsi/ssl_transport_security_utils.h +11 -0
  477. data/src/core/tsi/transport_security.cc +0 -4
  478. data/src/core/tsi/transport_security.h +0 -2
  479. data/src/core/tsi/transport_security_interface.h +0 -4
  480. data/src/core/{lib/gpr → util}/alloc.h +3 -3
  481. data/src/core/{lib/gpr → util}/android/log.cc +0 -19
  482. data/src/core/{lib/gpr → util}/atm.cc +1 -1
  483. data/src/core/{ext/gcp/metadata_query.cc → util/gcp_metadata_query.cc} +25 -26
  484. data/src/core/{ext/gcp/metadata_query.h → util/gcp_metadata_query.h} +11 -11
  485. data/src/core/{lib/http → util/http_client}/format_request.cc +4 -3
  486. data/src/core/{lib/http → util/http_client}/format_request.h +6 -5
  487. data/src/core/{lib/http → util/http_client}/httpcli.cc +9 -10
  488. data/src/core/{lib/http → util/http_client}/httpcli.h +6 -5
  489. data/src/core/{lib/http → util/http_client}/httpcli_security_connector.cc +9 -9
  490. data/src/core/{lib/http → util/http_client}/httpcli_ssl_credentials.h +5 -4
  491. data/src/core/{lib/http → util/http_client}/parser.cc +4 -5
  492. data/src/core/{lib/http → util/http_client}/parser.h +5 -6
  493. data/src/core/{lib → util}/json/json.h +5 -4
  494. data/src/core/{lib → util}/json/json_args.h +5 -5
  495. data/src/core/{lib → util}/json/json_channel_args.h +6 -6
  496. data/src/core/{lib → util}/json/json_object_loader.cc +3 -2
  497. data/src/core/{lib → util}/json/json_object_loader.h +7 -7
  498. data/src/core/{lib → util}/json/json_reader.cc +3 -2
  499. data/src/core/{lib → util}/json/json_reader.h +6 -6
  500. data/src/core/{lib → util}/json/json_util.cc +4 -4
  501. data/src/core/{lib → util}/json/json_util.h +6 -6
  502. data/src/core/{lib → util}/json/json_writer.cc +3 -3
  503. data/src/core/{lib → util}/json/json_writer.h +6 -6
  504. data/src/core/{lib/gpr → util}/linux/log.cc +0 -45
  505. data/src/core/{lib/gpr → util}/log.cc +45 -12
  506. data/src/core/{lib/gpr → util}/msys/tmpfile.cc +2 -2
  507. data/src/core/{lib/gpr → util}/posix/cpu.cc +1 -1
  508. data/src/core/{lib/gpr → util}/posix/log.cc +0 -42
  509. data/src/core/{lib/gpr → util}/posix/time.cc +1 -1
  510. data/src/core/{lib/gpr → util}/posix/tmpfile.cc +2 -2
  511. data/src/core/{lib/gpr → util}/spinlock.h +3 -3
  512. data/src/core/{lib/gpr → util}/string.cc +2 -2
  513. data/src/core/{lib/gpr → util}/string.h +3 -3
  514. data/src/core/{lib/gpr → util}/time_precise.cc +1 -1
  515. data/src/core/{lib/gpr → util}/time_precise.h +3 -3
  516. data/src/core/{lib/gpr → util}/tmpfile.h +3 -3
  517. data/src/core/{lib/gpr → util}/useful.h +3 -3
  518. data/src/core/{lib/gpr → util}/windows/log.cc +1 -44
  519. data/src/core/{lib/gpr → util}/windows/string.cc +1 -1
  520. data/src/core/{lib/gpr → util}/windows/string_util.cc +1 -1
  521. data/src/core/{lib/gpr → util}/windows/time.cc +1 -1
  522. data/src/core/{lib/gpr → util}/windows/tmpfile.cc +1 -1
  523. data/src/core/xds/grpc/certificate_provider_store.cc +3 -3
  524. data/src/core/xds/grpc/certificate_provider_store.h +4 -4
  525. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +3 -3
  526. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +3 -3
  527. data/src/core/xds/grpc/xds_audit_logger_registry.h +1 -1
  528. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +5 -5
  529. data/src/core/xds/grpc/xds_bootstrap_grpc.h +3 -3
  530. data/src/core/xds/grpc/xds_certificate_provider.h +1 -1
  531. data/src/core/xds/grpc/xds_client_grpc.cc +27 -23
  532. data/src/core/xds/grpc/xds_client_grpc.h +2 -2
  533. data/src/core/xds/grpc/xds_cluster.cc +4 -5
  534. data/src/core/xds/grpc/xds_cluster.h +1 -1
  535. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +2 -2
  536. data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +1 -1
  537. data/src/core/xds/grpc/xds_common_types.cc +1 -1
  538. data/src/core/xds/grpc/xds_common_types.h +1 -1
  539. data/src/core/xds/grpc/xds_endpoint.cc +4 -5
  540. data/src/core/xds/grpc/xds_http_fault_filter.cc +2 -2
  541. data/src/core/xds/grpc/xds_http_filters.h +2 -2
  542. data/src/core/xds/grpc/xds_http_rbac_filter.cc +3 -3
  543. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +2 -2
  544. data/src/core/xds/grpc/xds_lb_policy_registry.h +1 -1
  545. data/src/core/xds/grpc/xds_listener.cc +4 -6
  546. data/src/core/xds/grpc/xds_route_config.cc +7 -8
  547. data/src/core/xds/grpc/xds_transport_grpc.cc +2 -2
  548. data/src/core/xds/grpc/xds_transport_grpc.h +1 -1
  549. data/src/core/xds/xds_client/xds_api.cc +5 -9
  550. data/src/core/xds/xds_client/xds_bootstrap.cc +1 -1
  551. data/src/core/xds/xds_client/xds_bootstrap.h +1 -1
  552. data/src/core/xds/xds_client/xds_client.cc +39 -45
  553. data/src/core/xds/xds_client/xds_client.h +0 -3
  554. data/src/core/xds/xds_client/xds_client_stats.cc +20 -18
  555. data/src/core/xds/xds_client/xds_client_stats.h +2 -2
  556. data/src/ruby/ext/grpc/rb_call.c +8 -1
  557. data/src/ruby/ext/grpc/rb_completion_queue.c +15 -32
  558. data/src/ruby/ext/grpc/rb_completion_queue.h +7 -1
  559. data/src/ruby/ext/grpc/rb_server.c +39 -22
  560. data/src/ruby/lib/grpc/version.rb +1 -1
  561. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +4 -0
  562. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +12 -12
  563. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +66 -41
  564. data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +1497 -0
  565. data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +58 -0
  566. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +10 -3
  567. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -2
  568. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +2 -0
  569. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +5 -0
  570. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +45 -1
  571. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +33 -23
  572. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +3 -6
  573. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +9 -4
  574. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +6 -0
  575. data/third_party/boringssl-with-bazel/src/crypto/internal.h +7 -0
  576. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +0 -4
  577. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +49 -16
  578. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -10
  579. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +7 -17
  580. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -6
  581. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +3 -0
  582. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +125 -0
  583. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +0 -23
  584. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +1 -1
  585. data/third_party/boringssl-with-bazel/src/ssl/internal.h +4 -10
  586. metadata +95 -91
  587. data/src/core/ext/transport/chttp2/transport/http_trace.cc +0 -19
  588. data/src/core/ext/transport/chttp2/transport/http_trace.h +0 -24
  589. data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -23
  590. data/src/core/handshaker/security/tsi_error.cc +0 -31
  591. data/src/core/handshaker/security/tsi_error.h +0 -30
  592. data/src/core/lib/channel/channel_stack_trace.cc +0 -19
  593. data/src/core/lib/channel/channel_stack_trace.h +0 -24
  594. data/src/core/lib/channel/context.h +0 -105
  595. data/src/core/lib/channel/metrics.cc +0 -334
  596. data/src/core/lib/channel/metrics.h +0 -365
  597. data/src/core/lib/event_engine/trace.cc +0 -25
  598. data/src/core/lib/iomgr/ev_windows.cc +0 -30
  599. data/src/core/lib/promise/trace.cc +0 -20
  600. data/src/core/lib/promise/trace.h +0 -24
  601. data/src/core/lib/resource_quota/trace.cc +0 -19
  602. data/src/core/lib/resource_quota/trace.h +0 -24
  603. data/src/core/lib/slice/slice_refcount.cc +0 -20
  604. data/src/core/lib/surface/api_trace.cc +0 -25
  605. data/src/core/lib/surface/call_trace.h +0 -24
  606. data/src/core/lib/surface/wait_for_cq_end_op.cc +0 -75
  607. data/src/core/lib/surface/wait_for_cq_end_op.h +0 -72
  608. data/src/core/lib/transport/batch_builder.cc +0 -172
  609. data/src/core/lib/transport/batch_builder.h +0 -474
  610. data/src/core/resolver/xds/xds_resolver_trace.cc +0 -25
  611. data/src/core/resolver/xds/xds_resolver_trace.h +0 -30
  612. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -122
  613. /data/src/core/{lib/gpr → util}/alloc.cc +0 -0
  614. /data/src/core/{lib/gpr → util}/iphone/cpu.cc +0 -0
  615. /data/src/core/{lib/gpr → util}/linux/cpu.cc +0 -0
  616. /data/src/core/{lib/gpr → util}/posix/string.cc +0 -0
  617. /data/src/core/{lib/gpr → util}/posix/sync.cc +0 -0
  618. /data/src/core/{lib/gpr → util}/sync.cc +0 -0
  619. /data/src/core/{lib/gpr → util}/sync_abseil.cc +0 -0
  620. /data/src/core/{lib/gpr → util}/time.cc +0 -0
  621. /data/src/core/{lib/gpr → util}/windows/cpu.cc +0 -0
  622. /data/src/core/{lib/gpr → util}/windows/sync.cc +0 -0
@@ -23,17 +23,17 @@
23
23
 
24
24
  #include "absl/base/attributes.h"
25
25
  #include "absl/log/check.h"
26
+ #include "absl/log/log.h"
26
27
  #include "absl/strings/str_cat.h"
27
28
 
28
- #include <grpc/support/log.h>
29
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.
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};
@@ -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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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_INFO,
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{};