kevinjmh commented on a change in pull request #3072: [CARBONDATA-3247] Support to select all columns when creating MV datamap
URL:
https://github.com/apache/carbondata/pull/3072#discussion_r281536020
##########
File path: datamap/mv/plan/src/main/scala/org/apache/carbondata/mv/plans/util/BirdcageOptimizer.scala
##########
@@ -132,7 +133,9 @@ object BirdcageOptimizer extends RuleExecutor[LogicalPlan] {
Batch(
"RewriteSubquery", Once,
RewritePredicateSubquery,
- CollapseProject) :: Nil
+ CollapseProject) ::
+ Batch(
+ "MVProjectAdd", Once, MVProjectColumnsAdd)::Nil
Review comment:
current logic:
MVqueryString->logicalPlan->modularize->optimizer->modularPlan
modularPlan.isSPJGH -> false(not support groupBy node without child of select node) -> throw unsupport exception
the key is that when generating logicalPlan, Spark use rule `RemoveRedundantProject` to remove useless project when optimizing. What Qiu is doing is to revert that rule in MV optimizer
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[hidden email]
With regards,
Apache Git Services