This thread is for the proposal at https://github.com/grpc/proposal/pull/112. Full gRFC at https://github.com/lidizheng/proposal/blob/master/L42-metadata-flags.md.
The purpose of this gRFC is to enable gRPC Python client to utilize the “Wait For Ready” mechanism provided by C-Core, which underlying is to utilize the initial metadata flags. This mechanism can later be used to support future metadata flags. Definition of Wait For Ready semantics > If an RPC is issued but the channel is in TRANSIENT_FAILURE or SHUTDOWN > states, the RPC is unable to be transmitted promptly. By default, gRPC > implementations SHOULD fail such RPCs immediately. This is known as "fail > fast," but the usage of the term is historical. RPCs SHOULD NOT fail as a > result of the channel being in other states (CONNECTING, READY, or IDLE). > > gRPC implementations MAY provide a per-RPC option to not fail RPCs as a > result of the channel being in TRANSIENT_FAILURE state. Instead, the > implementation queues the RPCs until the channel is READY. This is known as > "wait for ready." The RPCs SHOULD still fail before READY if there are > unrelated reasons, such as the channel is SHUTDOWN or the RPC's deadline is > reached. > > From https://github.com/grpc/grpc/blob/master/doc/wait-for-ready.md Proposal * Add an optional `wait_for_ready` variable to `MultiCallable` classes initialization methods. Default `None`, accept `bool`. * Per RPC level `wait_for_ready` variable can override upper level. * Import initial metadata flags constants from `grpc_types.h` to `grpc.pxi`. * (Suggesting) Add an optional `wait_for_ready` variable to `Channel` class initialization method. Default `None`, accept `bool`. -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/31981f51-f613-4e5b-b484-8d592db61574%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
