You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@impala.apache.org by "pengdou (Code Review)" <ge...@cloudera.org> on 2022/09/30 07:35:51 UTC

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

pengdou has uploaded this change for review. ( http://gerrit.cloudera.org:8080/19050


Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................

[IMPALA-11625] Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECTED and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
  [PARTITIONED BY (col_name[, ...])]
  [SORT BY ([column [, column ...]])]
  [COMMENT 'table_comment']
  [ROW FORMAT row_format]
  [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
  [STORED AS cmvas_file_format]
  LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
  [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
  select_statement

cmvas_file_format:
    PARQUET
  | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
23 files changed, 793 insertions(+), 37 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/5
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 5
Gerrit-Owner: pengdou <pe...@126.com>

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 6:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11498/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 6
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Fri, 30 Sep 2022 10:37:47 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has uploaded a new patch set (#11). ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................

IMPALA-11625: Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECT and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/AnalyzerTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
24 files changed, 819 insertions(+), 47 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/11
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 11
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "Baike Xia (Code Review)" <ge...@cloudera.org>.
Baike Xia has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 7:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/Analyzer.java
File fe/src/main/java/org/apache/impala/analysis/Analyzer.java:

http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/Analyzer.java@124
PS6, Line 124: MATERIALIZED_VIEW
This one doesn't seem to be in use. Can we delete it?


http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
File fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java:

http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java@645
PS6, Line 645: if (view.getMetaStoreTable().getTableType().equals(MATERIALIZED_VIEW.toString()))
That doesn't seem right. enum cannot be compared with string to obtain true.
Should write it this way?
if (view.getMetaStoreTable().getTableType().name().equals(MATERIALIZED_VIEW.toString()))



-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 7
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Thu, 13 Oct 2022 12:22:47 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has uploaded a new patch set (#13). ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................

IMPALA-11625: Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECT and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/AnalyzerTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
24 files changed, 825 insertions(+), 46 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/13
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 13
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 12:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/8710/ DRY_RUN=true


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 12
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Mon, 17 Oct 2022 15:05:03 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 5:

(30 comments)

http://gerrit.cloudera.org:8080/#/c/19050/5/be/src/service/client-request-state.cc
File be/src/service/client-request-state.cc:

http://gerrit.cloudera.org:8080/#/c/19050/5/be/src/service/client-request-state.cc@708
PS5, Line 708:   // portion of the operation). The exception is if the user specified IF NOT EXISTS and the table already
line too long (106 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/be/src/service/client-request-state.cc@1116
PS5, Line 1116:     // When the coordinator is not available for CTAS/CMvAS that requires a coordinator, check
line too long (94 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
File fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java:

http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java@51
PS5, Line 51:   private final static EnumSet<THdfsFileFormat> SUPPORTED_INSERT_MATERIALIZED_VIEW_FORMATS =
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java@68
PS5, Line 68:   public CreateMaterializedViewAsSelectStmt(CmvasParams params, List<PlanHint> planHints) {
line too long (91 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java@104
PS5, Line 104:     if (!SUPPORTED_INSERT_MATERIALIZED_VIEW_FORMATS.contains(createStmt_.getFileFormat())) {
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java@122
PS5, Line 122:       throw new AnalysisException("Query statement in CreateMaterializedViewAsSelectStmt " +
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java@129
PS5, Line 129:       throw new AnalysisException("Query statement in CreateMaterializedViewAsSelectStmt " +
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
File fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java:

http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java@142
PS5, Line 142:         // DROP MATERIALIZED VIEW IF EXISTS 'table' succeeds, similarly to Hive, but unlike postgres.
line too long (101 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java@145
PS5, Line 145:             "DROP MATERIALIZED VIEW not allowed on a none-materialized view: %s.%s", dbName_, getTbl()));
line too long (105 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java@151
PS5, Line 151:             "DROP TABLE/VIEW not allowed on a materialized view: %s.%s", dbName_, getTbl()));
line too long (93 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
File fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java:

http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java@477
PS5, Line 477:     return getCreateTableSql(dbName, tableName, tableComment, columnsSql, partitionColumnsSql,
line too long (94 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java@478
PS5, Line 478:         primaryKeysSql, foreignKeysSql, kuduPartitionByParams, sortProperties, tblProperties,
line too long (93 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
File fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java:

http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java@80
PS5, Line 80:         && !singleNodePlan.hasLimit() || analysisResult.isCreateMaterializedViewAsSelectStmt()) {
line too long (97 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
File fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java:

http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java@2671
PS5, Line 2671:           params.getTable_name().table_name, "Load for DROP TABLE/VIEW/MATERIALIZED VIEW ", null);
line too long (98 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java@2747
PS5, Line 2747:       } else if (params.isSetIs_table() && ((params.is_table && existingTbl instanceof View)
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java@6391
PS5, Line 6391:         table.getMetaStoreTable().getTableType().endsWith(MATERIALIZED_VIEW.toString()))) {
line too long (91 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
File fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java:

http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java@4224
PS5, Line 4224:         "as select * from functional.jointbl", "CREATE MATERIALIZED VIEW must specify location !");
line too long (99 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java@4227
PS5, Line 4227:     AnalyzesOk("create materialized view newmv stored as parquetfile LOCATION '/mv/newmv'" +
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java@4236
PS5, Line 4236:     AnalyzesOk("create materialized view newmv partitioned by (year) LOCATION '/mv/newmv' as " +
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java@4258
PS5, Line 4258:         " LOCATION '/mv/db_does_not_exist/newmv' as select * from functional.jointbl limit 1",
line too long (94 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java@4259
PS5, Line 4259:         "Query statement in CreateMaterializedViewAsSelectStmt should not have LimitElement!");
line too long (95 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java
File fe/src/test/java/org/apache/impala/analysis/ParserTest.java:

http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3283
PS5, Line 3283:     ParsesOk("CREATE MATERIALIZED VIEW Foo.Bar AS SELECT int_col, bool_col from tbl limit 10");
line too long (95 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3285
PS5, Line 3285:     ParsesOk("CREATE MATERIALIZED VIEW IF NOT EXISTS Foo.Bar LOCATION '/a/b' AS SELECT * from foo");
line too long (100 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3287
PS5, Line 3287:     ParsesOk("CREATE MATERIALIZED VIEW Foo ROW FORMAT DELIMITED STORED AS PARQUETFILE AS SELECT 1");
line too long (100 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3288
PS5, Line 3288:     ParsesOk("CREATE MATERIALIZED VIEW Foo TBLPROPERTIES ('a'='b', 'c'='d') AS SELECT * from bar");
line too long (99 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3297
PS5, Line 3297:     ParserError("CREATE MATERIALIZED VIEW Foo ROW FORMAT DELIMITED STORED AS PARQUET AS SELECT");
line too long (97 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3298
PS5, Line 3298:     ParserError("CREATE MATERIALIZED VIEW Foo ROW FORMAT DELIMITED STORED AS PARQUET AS WITH");
line too long (95 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3311
PS5, Line 3311:     ParsesOk("CREATE MATERIALIZED VIEW Foo PARTITIONED BY (a) ROW FORMAT DELIMITED STORED AS " +
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3316
PS5, Line 3316:     ParserError("CREATE MATERIALIZED VIEW Foo PARTITIONED BY (a=2, b) AS SELECT * from Bar");
line too long (93 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/5/fe/src/test/java/org/apache/impala/analysis/ParserTest.java@3317
PS5, Line 3317:     ParserError("CREATE MATERIALIZED VIEW Foo PARTITIONED BY (a, b=2) AS SELECT * from Bar");
line too long (93 > 90)



-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 5
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Fri, 30 Sep 2022 07:36:41 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 7:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11623/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 7
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Thu, 13 Oct 2022 12:24:10 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has uploaded a new patch set (#10). ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................

IMPALA-11625: Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECT and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/AnalyzerTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
24 files changed, 813 insertions(+), 42 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/10
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 10
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 12:

Build failed: https://jenkins.impala.io/job/gerrit-verify-dryrun/8715/


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 12
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Tue, 18 Oct 2022 10:30:50 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 13: Verified-1

Build failed: https://jenkins.impala.io/job/gerrit-verify-dryrun/8716/


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 13
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Tue, 18 Oct 2022 17:13:16 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 10:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11635/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 10
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Fri, 14 Oct 2022 11:21:55 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has uploaded a new patch set (#12). ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................

IMPALA-11625: Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECT and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/AnalyzerTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
24 files changed, 815 insertions(+), 46 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/12
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 12
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 8:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/Analyzer.java
File fe/src/main/java/org/apache/impala/analysis/Analyzer.java:

http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/Analyzer.java@124
PS6, Line 124: 
> This one doesn't seem to be in use. Can we delete it?
Done


http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
File fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java:

http://gerrit.cloudera.org:8080/#/c/19050/6/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java@645
PS6, Line 645: if (view.getMetaStoreTable().getTableType().equals(MATERIALIZED_VIEW.toString()))
> That doesn't seem right. enum cannot be compared with string to obtain true
the result of view.getMetaStoreTable() is instance of org.apache.hadoop.hive.metastore.api.Table, 
the define of org.apache.hadoop.hive.metastore.api.Table#getTableType as following:
  @Nullable
  public String getTableType() {
    return this.tableType;
  }

so the usage is right.



-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 8
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Fri, 14 Oct 2022 02:30:03 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 13: Verified+1


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 13
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Wed, 19 Oct 2022 07:52:28 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 5:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11497/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 5
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Fri, 30 Sep 2022 07:56:57 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 13:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/8716/ DRY_RUN=true


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 13
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Tue, 18 Oct 2022 12:08:34 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 13:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/8720/ DRY_RUN=true


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 13
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Wed, 19 Oct 2022 02:40:06 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 11:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11640/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 11
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Mon, 17 Oct 2022 13:06:58 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 12: Verified-1

Build failed: https://jenkins.impala.io/job/gerrit-verify-dryrun/8710/


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 12
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Mon, 17 Oct 2022 20:10:48 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 13:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11654/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 13
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Tue, 18 Oct 2022 12:02:51 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has uploaded a new patch set (#8). ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................

[IMPALA-11625] Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECTED and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
23 files changed, 811 insertions(+), 40 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/8
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 8
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 10:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/8705/ DRY_RUN=true


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 10
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Fri, 14 Oct 2022 11:03:12 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 12:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/8715/ DRY_RUN=true


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 12
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Tue, 18 Oct 2022 05:25:47 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has uploaded a new patch set (#7). ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................

[IMPALA-11625] Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECTED and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
23 files changed, 813 insertions(+), 40 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/7
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 7
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
Hello Aman Sinha, Baike Xia, Impala Public Jenkins, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/19050

to look at the new patch set (#9).

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................

[IMPALA-11625] Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECT and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
23 files changed, 811 insertions(+), 40 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/9
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 9
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "pengdou (Code Review)" <ge...@cloudera.org>.
pengdou has uploaded a new patch set (#6). ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................

[IMPALA-11625] Support create/drop materialized view syntax on IMPALA

For infrequently modified datasets, building suitable materialized
views and querying on materialized views directly can significantly
reduce query response time.

Currently IMPALA only treats materialized view built by hive as
a normal table and does not support CREATE MATERIALIZED VIEW AS
SELECTED and DROP MATERIALIZED VIEW syntax on IMPALA.

CREATE TABLE AS SELECT can save the intermediate results of the
query, but it is very inconvenient to use and maintain, for example,
the calculation logic is not visible to the user.

So I implemented supporting of create/drop materialized view syntax
on impala.

CREATE MATERIALIZED VIEW syntax:
CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name
    [PARTITIONED BY (col_name[, ...])]
    [SORT BY ([column [, column ...]])]
    [COMMENT 'table_comment']
    [ROW FORMAT row_format]
    [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
    [STORED AS cmvas_file_format]
    LOCATION 'hdfs_path'
    [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED]
    [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)]
AS
    select_statement

cmvas_file_format:
    PARQUET
    | TEXTFILE

DROP MATERIALIZED VIEW syntax:
DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name

Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
---
M be/src/service/client-request-state.cc
M common/thrift/JniCatalog.thrift
M fe/src/main/cup/sql-parser.cup
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
M fe/src/main/java/org/apache/impala/analysis/Analyzer.java
A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java
M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java
M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java
M fe/src/main/java/org/apache/impala/analysis/LimitElement.java
M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
M fe/src/main/java/org/apache/impala/catalog/View.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/main/jflex/sql-scanner.flex
M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M testdata/datasets/functional/functional_schema_template.sql
M testdata/datasets/functional/schema_constraints.csv
A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test
M tests/metadata/test_ddl.py
23 files changed, 815 insertions(+), 41 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/6
-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 6
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 10: Verified-1

Build failed: https://jenkins.impala.io/job/gerrit-verify-dryrun/8705/


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 10
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Fri, 14 Oct 2022 16:11:10 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] [IMPALA-11625] Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: [IMPALA-11625] Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 8:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11632/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 8
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Fri, 14 Oct 2022 02:48:47 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 11:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/19050/11/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
File fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java:

http://gerrit.cloudera.org:8080/#/c/19050/11/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java@3292
PS11, Line 3292:     //         = getExistingTable(split[0], split[1], "Load for create Materialized view. ")
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/19050/11/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java@3294
PS11, Line 3294:     //     // Currently not support materialized view update, counts in SourceTable set to 0
line too long (92 > 90)



-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 11
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Mon, 17 Oct 2022 12:46:53 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-11625: Support create/drop materialized view syntax on IMPALA

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/19050 )

Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA
......................................................................


Patch Set 12:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/11641/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/19050
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b
Gerrit-Change-Number: 19050
Gerrit-PatchSet: 12
Gerrit-Owner: pengdou <pe...@126.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Baike Xia <xi...@163.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: pengdou <pe...@126.com>
Gerrit-Comment-Date: Mon, 17 Oct 2022 13:16:46 +0000
Gerrit-HasComments: No