You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by ad...@apache.org on 2023/01/17 07:29:45 UTC
[doris] branch master updated: [fix](MTMV) Exceptions occur when dropping meterialized view with if exists (#15568)
This is an automated email from the ASF dual-hosted git repository.
adonisling pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 82e2102e18 [fix](MTMV) Exceptions occur when dropping meterialized view with if exists (#15568)
82e2102e18 is described below
commit 82e2102e18df5fddc62984e61815cc28a08fedaa
Author: chenlinzhong <49...@qq.com>
AuthorDate: Tue Jan 17 15:29:39 2023 +0800
[fix](MTMV) Exceptions occur when dropping meterialized view with if exists (#15568)
---
.../main/java/org/apache/doris/alter/Alter.java | 29 +++++++++++++++-------
1 file changed, 20 insertions(+), 9 deletions(-)
diff --git a/fe/fe-core/src/main/java/org/apache/doris/alter/Alter.java b/fe/fe-core/src/main/java/org/apache/doris/alter/Alter.java
index 162f22456a..d9b7b9bd12 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/alter/Alter.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/alter/Alter.java
@@ -138,15 +138,26 @@ public class Alter {
throw new DdlException("Drop materialized view without table name is unsupported : " + stmt.toSql());
}
TableName tableName = !stmt.isForMTMV() ? stmt.getTableName() : stmt.getMTMVName();
-
- // check db
- String dbName = tableName.getDb();
- Database db = Env.getCurrentInternalCatalog().getDbOrDdlException(dbName);
-
- String name = tableName.getTbl();
- OlapTable olapTable = (OlapTable) db.getTableOrMetaException(name,
- !stmt.isForMTMV() ? TableType.OLAP : TableType.MATERIALIZED_VIEW);
-
+ Database db;
+ OlapTable olapTable;
+ if (stmt.isIfExists()) {
+ try {
+ String dbName = tableName.getDb();
+ db = Env.getCurrentInternalCatalog().getDbOrDdlException(dbName);
+ String name = tableName.getTbl();
+ olapTable = (OlapTable) db.getTableOrMetaException(name,
+ !stmt.isForMTMV() ? TableType.OLAP : TableType.MATERIALIZED_VIEW);
+ } catch (Exception e) {
+ LOG.info("db or table not exists, msg={}", e.getMessage());
+ return;
+ }
+ } else {
+ String dbName = tableName.getDb();
+ db = Env.getCurrentInternalCatalog().getDbOrDdlException(dbName);
+ String name = tableName.getTbl();
+ olapTable = (OlapTable) db.getTableOrMetaException(name,
+ !stmt.isForMTMV() ? TableType.OLAP : TableType.MATERIALIZED_VIEW);
+ }
// drop materialized view
if (!stmt.isForMTMV()) {
((MaterializedViewHandler) materializedViewHandler).processDropMaterializedView(stmt, db, olapTable);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org