[improvement](mtmv) Optimize get available mv logic to avoid unnecessary rewrite (#39734) (#40136)

## Proposed changes

commitId: 55ed1277
pr: https://github.com/apache/doris/pull/39734
This commit is contained in:
seawinde
2024-08-30 08:02:27 +08:00
committed by GitHub
parent e072ce7f68
commit 45e35e8a99
4 changed files with 201 additions and 1 deletions

View File

@ -1366,6 +1366,21 @@ class Suite implements GroovyInterceptable {
return result.values().toList()
}
def create_async_mv = { db, mv_name, mv_sql ->
sql """DROP MATERIALIZED VIEW IF EXISTS ${mv_name}"""
sql"""
CREATE MATERIALIZED VIEW ${mv_name}
BUILD IMMEDIATE REFRESH COMPLETE ON MANUAL
DISTRIBUTED BY RANDOM BUCKETS 2
PROPERTIES ('replication_num' = '1')
AS ${mv_sql}
"""
def job_name = getJobName(db, mv_name);
waitingMTMVTaskFinished(job_name)
sql "analyze table ${mv_name} with sync;"
}
def check_mv_rewrite_success = { db, mv_sql, query_sql, mv_name ->
sql """DROP MATERIALIZED VIEW IF EXISTS ${mv_name}"""