From 4f35c7d25ccd6112a8b086de170b8c6161527e94 Mon Sep 17 00:00:00 2001 From: 924060929 Date: Tue, 7 Jan 2025 19:49:01 +0800 Subject: [PATCH] [fix](cache) fix mtmv cache can not use test (#46537) fix mtmv can not use sql cache, introduced by #46443 --- .../java/org/apache/doris/common/NereidsSqlCacheManager.java | 2 +- .../suites/mtmv_p0/test_mtmv_sql_cache_and_profile.groovy | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/common/NereidsSqlCacheManager.java b/fe/fe-core/src/main/java/org/apache/doris/common/NereidsSqlCacheManager.java index ee1e9c17287c00..421cf575304214 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/common/NereidsSqlCacheManager.java +++ b/fe/fe-core/src/main/java/org/apache/doris/common/NereidsSqlCacheManager.java @@ -321,7 +321,7 @@ private boolean tablesOrDataChanged(Env env, SqlCacheContext sqlCacheContext) { // check table type and version for (Entry scanTable : sqlCacheContext.getUsedTables().entrySet()) { TableVersion tableVersion = scanTable.getValue(); - if (tableVersion.type != TableType.OLAP) { + if (tableVersion.type != TableType.OLAP && tableVersion.type != TableType.MATERIALIZED_VIEW) { return true; } TableIf tableIf = findTableIf(env, scanTable.getKey()); diff --git a/regression-test/suites/mtmv_p0/test_mtmv_sql_cache_and_profile.groovy b/regression-test/suites/mtmv_p0/test_mtmv_sql_cache_and_profile.groovy index 02191f0d4cd7d4..846c42f138f3cf 100644 --- a/regression-test/suites/mtmv_p0/test_mtmv_sql_cache_and_profile.groovy +++ b/regression-test/suites/mtmv_p0/test_mtmv_sql_cache_and_profile.groovy @@ -63,12 +63,13 @@ suite("test_mtmv_sql_cache_and_profile", "mtmv") { waitingMTMVTaskFinished(jobName) sql """set enable_sql_cache=true;""" + sql "ADMIN SET FRONTEND CONFIG ('cache_last_version_interval_second' = '10')" + sleep(10 * 1000) long startTime = System.currentTimeMillis() long timeoutTimestamp = startTime + 5 * 60 * 1000 def explain_res = "" while (System.currentTimeMillis() < timeoutTimestamp) { - sleep(5 * 1000) sql """select k2 from ${mvName} group by k2;""" try { explain_res = sql """explain plan select k2 from ${mvName} group by k2;""" @@ -79,6 +80,7 @@ suite("test_mtmv_sql_cache_and_profile", "mtmv") { if (explain_res.toString().indexOf("LogicalSqlCache") != -1 || explain_res.toString().indexOf("PhysicalSqlCache") != -1) { break } + sleep(5 * 1000) } assertTrue(explain_res.toString().indexOf("LogicalSqlCache") != -1 || explain_res.toString().indexOf("PhysicalSqlCache") != -1)