quxiucheng created CALCITE-3474: ----------------------------------- Summary: SqlSimpleParser simplifySql Query token.s NullPointerException Key: CALCITE-3474 URL: https://issues.apache.org/jira/browse/CALCITE-3474 Project: Calcite Issue Type: Bug Components: core Affects Versions: 1.21.0 Reporter: quxiucheng Fix For: next
SQL: {code:java} select ^ from (select * from sales.emp ) a {code} use SqlSimpleParser parse sql Exception: {code:java} java.lang.NullPointerExceptionjava.lang.NullPointerException at org.apache.calcite.sql.advise.SqlSimpleParser$Query.contains(SqlSimpleParser.java:818) at org.apache.calcite.sql.advise.SqlSimpleParser$Query.simplify(SqlSimpleParser.java:548) at org.apache.calcite.sql.advise.SqlSimpleParser$Query.simplifyList(SqlSimpleParser.java:508) at org.apache.calcite.sql.advise.SqlSimpleParser.simplifySql(SqlSimpleParser.java:171) at org.apache.calcite.sql.advise.SqlSimpleParser.simplifySql(SqlSimpleParser.java:141) at org.apache.calcite.sql.advise.SqlAdvisor.simplifySql(SqlAdvisor.java:556) at org.apache.calcite.sql.advise.SqlAdvisor.getCompletionHints0(SqlAdvisor.java:222) at org.apache.calcite.sql.advise.SqlAdvisor.getCompletionHints(SqlAdvisor.java:192) {code} cause: SqlSimpleParser Token.s s is null {code:java} private boolean contains(String hintToken) { for (Token token : tokenList) { switch (token.type) { case ID: // exception if (token.s.equals(hintToken)) { return true; } break; case QUERY: if (((Query) token).contains(hintToken)) { return true; } break; } } return false; } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)