From e5763e959dc2adda9b89bfb8975400fb14d5221a Mon Sep 17 00:00:00 2001 From: iosmanthus Date: Thu, 9 Dec 2021 16:29:16 +0800 Subject: [PATCH] cherry pick #366 to release-3.1 Signed-off-by: ti-srebot --- .../common/region/AbstractRegionStoreClient.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/tikv/common/region/AbstractRegionStoreClient.java b/src/main/java/org/tikv/common/region/AbstractRegionStoreClient.java index f58a926723d..cfa2eb27e70 100644 --- a/src/main/java/org/tikv/common/region/AbstractRegionStoreClient.java +++ b/src/main/java/org/tikv/common/region/AbstractRegionStoreClient.java @@ -203,11 +203,14 @@ private Boolean seekLeaderStore(BackOffer backOffer) { "update leader using switchLeader logic from store[%d] to store[%d]", region.getLeader().getStoreId(), peer.getStoreId())); // update region cache - region = regionManager.updateLeader(region, peer.getStoreId()); - // switch to leader store - store = currentLeaderStore; - updateClientStub(); - return true; + TiRegion result = regionManager.updateLeader(region, peer.getStoreId()); + if (result != null) { + region = result; + // switch to leader store + store = currentLeaderStore; + updateClientStub(); + } + return false; } } else { // no leader found, some response does not return normally, there may be network partition.