diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/executor/RegionReadExecutor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/executor/RegionReadExecutor.java index 016c3ed21fb47..3b6a0f0adb0df 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/executor/RegionReadExecutor.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/executor/RegionReadExecutor.java @@ -94,6 +94,12 @@ public RegionExecutionResult execute( resp.setMessage(info.getMessage()); } return resp; + } catch (ConsensusGroupNotExistException e) { + LOGGER.error("Execute FragmentInstance in ConsensusGroup {} failed.", groupId, e); + resp.setMessage(String.format(ERROR_MSG_FORMAT, e.getMessage())); + resp.setNeedRetry(true); + resp.setStatus(new TSStatus(TSStatusCode.CONSENSUS_GROUP_NOT_EXIST.getStatusCode())); + return resp; } catch (Throwable e) { LOGGER.error("Execute FragmentInstance in ConsensusGroup {} failed.", groupId, e); resp.setMessage(String.format(ERROR_MSG_FORMAT, e.getMessage())); @@ -104,9 +110,6 @@ public RegionExecutionResult execute( || t instanceof ServerNotReadyException) { resp.setNeedRetry(true); resp.setStatus(new TSStatus(TSStatusCode.RATIS_READ_UNAVAILABLE.getStatusCode())); - } else if (t instanceof ConsensusGroupNotExistException) { - resp.setNeedRetry(true); - resp.setStatus(new TSStatus(TSStatusCode.CONSENSUS_GROUP_NOT_EXIST.getStatusCode())); } return resp; }