diff --git a/src/main/java/org/tikv/common/operation/KVErrorHandler.java b/src/main/java/org/tikv/common/operation/KVErrorHandler.java index 7a0ab069cc..0707908f68 100644 --- a/src/main/java/org/tikv/common/operation/KVErrorHandler.java +++ b/src/main/java/org/tikv/common/operation/KVErrorHandler.java @@ -229,10 +229,14 @@ public class KVErrorHandler implements ErrorHandler { throw new StatusRuntimeException(Status.UNKNOWN.withDescription(error.toString())); } - logger.warn(String.format("Unknown error %s for region [%s]", error.toString(), ctxRegion)); + logger.warn(String.format("Unknown error %s for region [%s]", error, ctxRegion)); // For other errors, we only drop cache here. // Upper level may split this task. invalidateRegionStoreCache(ctxRegion); + // retry if raft proposal is dropped, it indicates the store is in the middle of transition + if (error.getMessage().contains("Raft Proposal Dropped")) { + return true; + } } boolean retry = false;