Github user jackylk commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/1563#discussion_r153711278
--- Diff: integration/spark2/src/main/spark2.1/CarbonSessionState.scala ---
@@ -190,8 +202,15 @@ class CarbonOptimizer(
extends SparkOptimizer(catalog, conf, experimentalMethods) {
override def execute(plan: LogicalPlan): LogicalPlan = {
- // In case scalar subquery add flag in relation to skip the decoder
plan in optimizer rule, And
- // optimize whole plan at once.
+ val transFormedPlan: LogicalPlan =
CarbonOptimizerUtil.transformForScalarSubQuery(plan)
+ super.execute(transFormedPlan)
+ }
+}
+object CarbonOptimizerUtil
+{
+ def transformForScalarSubQuery(plan: LogicalPlan) : LogicalPlan = {
--- End diff --
why not put it in `CarbonOptimizer` as private function?
---