diff options
author | Ken Payson <kpayson@google.com> | 2017-12-01 15:58:04 -0800 |
---|---|---|
committer | Yuchen Zeng <zyc@google.com> | 2018-01-08 16:43:09 -0800 |
commit | 43e09a5f3e5b0d46862d7e05b7eb54f660eabb89 (patch) | |
tree | 05bd7ddb80e0eaa855b27ac40df621ed49975e2f | |
parent | ca8650adf75d0daa7639230a3c909474f28b28ee (diff) |
Initialize last sent ping time
-rw-r--r-- | src/core/ext/transport/chttp2/transport/chttp2_transport.cc | 1 | ||||
-rw-r--r-- | src/core/ext/transport/chttp2/transport/writing.cc | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.cc b/src/core/ext/transport/chttp2/transport/chttp2_transport.cc index 3a2c4b6d1b..63ac65ac78 100644 --- a/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.cc @@ -549,6 +549,7 @@ static void init_transport(grpc_exec_ctx* exec_ctx, grpc_chttp2_transport* t, /* No pings allowed before receiving a header or data frame. */ t->ping_state.pings_before_data_required = 0; t->ping_state.is_delayed_ping_timer_set = false; + t->ping_state.last_ping_sent_time = GRPC_MILLIS_INF_PAST; t->ping_recv_state.last_ping_recv_time = GRPC_MILLIS_INF_PAST; t->ping_recv_state.ping_strikes = 0; diff --git a/src/core/ext/transport/chttp2/transport/writing.cc b/src/core/ext/transport/chttp2/transport/writing.cc index 15869b8880..204b5a7708 100644 --- a/src/core/ext/transport/chttp2/transport/writing.cc +++ b/src/core/ext/transport/chttp2/transport/writing.cc @@ -81,8 +81,11 @@ static void maybe_initiate_ping(grpc_exec_ctx* exec_ctx, /* not enough elapsed time between successive pings */ if (grpc_http_trace.enabled() || grpc_bdp_estimator_trace.enabled()) { gpr_log(GPR_DEBUG, - "%s: Ping delayed [%p]: not enough time elapsed since last ping", - t->is_client ? "CLIENT" : "SERVER", t->peer_string); + "%s: Ping delayed [%p]: not enough time elapsed since last ping. " + " Last ping %f: Next ping %f: Now %f", + t->is_client ? "CLIENT" : "SERVER", t->peer_string, + (double)t->ping_state.last_ping_sent_time, + (double)next_allowed_ping, (double)now); } if (!t->ping_state.is_delayed_ping_timer_set) { t->ping_state.is_delayed_ping_timer_set = true; @@ -91,6 +94,7 @@ static void maybe_initiate_ping(grpc_exec_ctx* exec_ctx, } return; } + pq->inflight_id = t->ping_ctr; t->ping_ctr++; GRPC_CLOSURE_LIST_SCHED(exec_ctx, &pq->lists[GRPC_CHTTP2_PCL_INITIATE]); |