Fix bug with stats

Signed-off-by: Nick Cameron <nrc@ncameron.org>
This commit is contained in:
Nick Cameron 2020-10-30 09:22:04 +13:00
parent 31a9c02b58
commit bf02734a12
2 changed files with 4 additions and 3 deletions

View File

@ -51,11 +51,11 @@ impl<Cl> RetryClient<Cl> {
macro_rules! retry {
($self: ident, $tag: literal, |$cluster: ident| $call: expr) => {{
let context = pd_stats($tag);
let stats = pd_stats($tag);
let mut last_err = Ok(());
for _ in 0..LEADER_CHANGE_RETRY {
let $cluster = &$self.cluster.read().await.0;
match context.done($call.await) {
match stats.done($call.await) {
Ok(r) => return Ok(r),
Err(e) => last_err = Err(e),
}

View File

@ -66,8 +66,9 @@ pub trait KvRequest: Request + Clone + Sync + Send + 'static + Sized {
let request = self.make_rpc_request(key_data, &store);
async move {
let request = request?;
let stats = tikv_stats(request.label());
let response = store.dispatch::<_, Self::RpcResponse>(&request).await;
let response = tikv_stats(request.label()).done(response)?;
let response = stats.done(response)?;
Ok((request, *response))
}
})