【已解决】doris 2.0.2 升doris 2.1.0 后,创建异步物化视图语法报错

Viewed 272

创建语句:

 CREATE   MATERIALIZED VIEW mv1_test006 BUILD DEFERRED REFRESH AUTO ON MANUAL
        partition by(l_shipdate)
        DISTRIBUTED BY RANDOM BUCKETS 2
        PROPERTIES ('replication_num' = '1')
        AS
        select l_shipdate, o_orderdate, l_partkey,
            l_suppkey, sum(o_totalprice) as sum_total
            from test.lineitem
            left join test.orders on  l_orderkey =  o_orderkey
                             and l_shipdate = o_orderdate
            group by
            l_shipdate,
            o_orderdate,
            l_partkey,
            l_suppkey;

命令行报错信息:

image.png

fe 报错日志:

WARN (mysql-nio-pool-46|1184) [ConnectProcessor.handleQueryException():335] Process one query failed because.
org.apache.doris.common.AnalysisException: errCode = 2, detailMessage = Syntax error in line 1:
...RIALIZED VIEW mv1_test006 BUILD DEFERRED REFRESH AUTO ...
                          ^
Encountered: BUILD
Expected
     at org.apache.doris.qe.ConnectProcessor.parse(ConnectProcessor.java:378) ~[doris-fe.jar:1.2-SNAPSHOT]
     at org.apache.doris.qe.ConnectProcessor.executeQuery(ConnectProcessor.java:222) ~[doris-fe.jar:1.2-SNAPSHOT]
     at org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:183) ~[doris-fe.jar:1.2-SNAPSHOT]
     at org.apache.doris.qe.MysqlConnectProcessor.handleQuery(MysqlConnectProcessor.java:176) ~[doris-fe.jar:1.2-SNAPSHOT]
     at org.apache.doris.qe.MysqlConnectProcessor.dispatch(MysqlConnectProcessor.java:205) ~[doris-fe.jar:1.2-SNAPSHOT]
     at org.apache.doris.qe.MysqlConnectProcessor.processOnce(MysqlConnectProcessor.java:258) ~[doris-fe.jar:1.2-SNAPSHOT]
     at org.apache.doris.mysql.ReadListener.lambda$handleEvent$0(ReadListener.java:52) ~[doris-fe.jar:1.2-SNAPSHOT]
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_232]
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_232]
     at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_232]
Caused by: org.apache.doris.common.AnalysisException: errCode = 2, detailMessage = Syntax error
     at org.apache.doris.analysis.SqlParser.unrecovered_syntax_error(SqlParser.java:2945) ~[doris-fe.jar:1.2-SNAPSHOT]
     at java_cup.runtime.lr_parser.parse(lr_parser.java:616) ~[jflex-1.4.3.jar:?]
     at org.apache.doris.common.util.SqlParserUtils.getMultiStmts(SqlParserUtils.java:60) ~[doris-fe.jar:1.2-SNAPSHOT]
     at org.apache.doris.qe.ConnectProcessor.parse(ConnectProcessor.java:367) ~[doris-fe.jar:1.2-SNAPSHOT]
     ... 9 more

image.png

4 Answers

先确认一下是否开启了新优化器:
set global enable_nereids_planner=true

本地基于2.0.2升至2.1跑该demo暂未复现;跟进中

刚在 k8s 用 helm 安装的 2.1.1 版本,也报这个错,请问下怎么解决