Github user ManoharVanam commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/1563#discussion_r153725528
--- 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 --
I want to use it in internal session state as well for acl, so I refactored
this code to avoid duplication .
---