diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java b/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java index 4531535983..252e628cb5 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java @@ -532,7 +532,14 @@ public class StmtExecutor { if (parsedStmt != null) { return; } - List statements = new NereidsParser().parseSQL(originStmt.originStmt); + List statements; + try { + statements = new NereidsParser().parseSQL(originStmt.originStmt); + } catch (Exception e) { + throw new NereidsException( + new AnalysisException("Nereids parse failed. " + e.getMessage(), e) + ); + } if (statements.size() <= originStmt.idx) { throw new NereidsException( new AnalysisException("Nereids parse failed. Parser get " + statements.size() + " statements,"