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 ee1e9c1728..421cf57530 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 @@ public class NereidsSqlCacheManager { // 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 02191f0d4c..846c42f138 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)