[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

@ -68,7 +68,8 @@ public class InitMaterializationContextHook implements PlannerHook {
* @param cascadesContext current cascadesContext in the planner
*/
protected void doInitMaterializationContext(CascadesContext cascadesContext) {
TableCollectorContext collectorContext = new TableCollectorContext(Sets.newHashSet(), true);
// Only collect the table or mv which query use directly, to avoid useless mv partition in rewrite
TableCollectorContext collectorContext = new TableCollectorContext(Sets.newHashSet(), false);
try {
Plan rewritePlan = cascadesContext.getRewritePlan();
// Keep use one connection context when in query, if new connect context,