diff --git a/src/main/java/org/tikv/common/PDClient.java b/src/main/java/org/tikv/common/PDClient.java index 59e16a5c5a..3d2e7f4189 100644 --- a/src/main/java/org/tikv/common/PDClient.java +++ b/src/main/java/org/tikv/common/PDClient.java @@ -280,9 +280,16 @@ public class PDClient extends AbstractGRPCClient @Override public Store getStore(BackOffer backOffer, long storeId) { - return callWithRetry( - backOffer, PDGrpc.getGetStoreMethod(), buildGetStoreReq(storeId), buildPDErrorHandler()) - .getStore(); + GetStoreResponse resp = + callWithRetry( + backOffer, + PDGrpc.getGetStoreMethod(), + buildGetStoreReq(storeId), + buildPDErrorHandler()); + if (resp != null) { + return resp.getStore(); + } + return null; } @Override diff --git a/src/main/java/org/tikv/common/region/StoreHealthyChecker.java b/src/main/java/org/tikv/common/region/StoreHealthyChecker.java index 546c08a969..c3530171ab 100644 --- a/src/main/java/org/tikv/common/region/StoreHealthyChecker.java +++ b/src/main/java/org/tikv/common/region/StoreHealthyChecker.java @@ -81,7 +81,7 @@ public class StoreHealthyChecker implements Runnable { private boolean checkStoreTombstone(TiStore store) { try { Metapb.Store newStore = pdClient.getStore(ConcreteBackOffer.newRawKVBackOff(), store.getId()); - if (newStore.getState() == Metapb.StoreState.Tombstone) { + if (newStore != null && newStore.getState() == Metapb.StoreState.Tombstone) { return true; } } catch (Exception e) {