Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions src/backend/optimizer/README.cbdb.aqumv
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,11 @@ Below are not supported now:
Group By/Grouping Sets/Rollup/Cube (on mv_query)
Window Functions
CTE
Distinct
Distinct On
UNION/INTERSECT/EXCEPT
FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE, FOR KEY SHARE
Scatter By
Refresh Materialized View
Create AS
Partition Tables
Expand Down
13 changes: 12 additions & 1 deletion src/backend/optimizer/plan/aqumv.c
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,10 @@ answer_query_using_materialized_views(PlannerInfo *root,
/* Group By without agg could be possible though IMMV doesn't support it yet. */
bool can_not_use_mv = (parse->commandType != CMD_SELECT) ||
(parse->rowMarks != NIL) ||
(parse->distinctClause != NIL) ||
(parse->scatterClause != NIL) ||
(parse->cteList != NIL) ||
(parse->setOperations != NULL) ||
parse->hasWindowFuncs ||
parse->hasDistinctOn ||
parse->hasModifyingCTE ||
Expand Down Expand Up @@ -211,7 +215,14 @@ answer_query_using_materialized_views(PlannerInfo *root,
mvQuery->hasWindowFuncs ||
mvQuery->hasDistinctOn ||
mvQuery->hasModifyingCTE ||
mvQuery->hasSubLinks)
mvQuery->hasSubLinks ||
(mvQuery->groupClause != NIL) ||
/* IVM doesn't support belows now, just in case. */
(mvQuery->rowMarks != NIL) ||
(mvQuery->distinctClause != NIL) ||
(mvQuery->cteList != NIL) ||
(mvQuery->setOperations != NULL) ||
(mvQuery->scatterClause != NIL))
continue;

if (list_length(mvQuery->jointree->fromlist) != 1)
Expand Down