diff options
author | 2018-08-06 14:46:37 -0700 | |
---|---|---|
committer | 2018-08-06 14:46:53 -0700 | |
commit | f7e72560b664cce34bdf3c64b411cd6a153219ad (patch) | |
tree | 2c5f6f9eac3daa3c5ada269bef15b06ed17c34af /src/core/ext/filters/client_channel/client_channel.cc | |
parent | 3b60506f1aaf137077129bbbe882bc106449550e (diff) |
Add experimental API for resetting connection backoff.
Diffstat (limited to 'src/core/ext/filters/client_channel/client_channel.cc')
-rw-r--r-- | src/core/ext/filters/client_channel/client_channel.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/core/ext/filters/client_channel/client_channel.cc b/src/core/ext/filters/client_channel/client_channel.cc index fead8feb17..b06f09d8c7 100644 --- a/src/core/ext/filters/client_channel/client_channel.cc +++ b/src/core/ext/filters/client_channel/client_channel.cc @@ -622,6 +622,17 @@ static void start_transport_op_locked(void* arg, grpc_error* error_ignored) { } GRPC_ERROR_UNREF(op->disconnect_with_error); } + + if (op->reset_connect_backoff) { + if (chand->resolver != nullptr) { + chand->resolver->ResetBackoffLocked(); + chand->resolver->RequestReresolutionLocked(); + } + if (chand->lb_policy != nullptr) { + chand->lb_policy->ResetBackoffLocked(); + } + } + GRPC_CHANNEL_STACK_UNREF(chand->owning_stack, "start_transport_op"); GRPC_CLOSURE_SCHED(op->on_consumed, GRPC_ERROR_NONE); |