From 0fff5c6e6325357a241d311e72db942c4850af34 Mon Sep 17 00:00:00 2001
From: Reynold Xin <rxin@databricks.com>
Date: Mon, 1 Feb 2016 23:08:11 -0800
Subject: [PATCH] [SPARK-13130][SQL] Make codegen variable names easier to read

1. Use lower case
2. Change long prefixes to something shorter (in this case I am changing only one: TungstenAggregate -> agg).

Author: Reynold Xin <rxin@databricks.com>

Closes #11017 from rxin/SPARK-13130.
---
 .../spark/sql/execution/WholeStageCodegen.scala       | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/sql/core/src/main/scala/org/apache/spark/sql/execution/WholeStageCodegen.scala b/sql/core/src/main/scala/org/apache/spark/sql/execution/WholeStageCodegen.scala
index ef81ba60f0..02b0f423ed 100644
--- a/sql/core/src/main/scala/org/apache/spark/sql/execution/WholeStageCodegen.scala
+++ b/sql/core/src/main/scala/org/apache/spark/sql/execution/WholeStageCodegen.scala
@@ -26,6 +26,7 @@ import org.apache.spark.sql.catalyst.expressions._
 import org.apache.spark.sql.catalyst.expressions.codegen._
 import org.apache.spark.sql.catalyst.plans.physical.Partitioning
 import org.apache.spark.sql.catalyst.rules.Rule
+import org.apache.spark.sql.execution.aggregate.TungstenAggregate
 import org.apache.spark.util.Utils
 
 /**
@@ -33,6 +34,12 @@ import org.apache.spark.util.Utils
   */
 trait CodegenSupport extends SparkPlan {
 
+  /** Prefix used in the current operator's variable names. */
+  private def variablePrefix: String = this match {
+    case _: TungstenAggregate => "agg"
+    case _ => nodeName.toLowerCase
+  }
+
   /**
     * Whether this SparkPlan support whole stage codegen or not.
     */
@@ -53,7 +60,7 @@ trait CodegenSupport extends SparkPlan {
     */
   def produce(ctx: CodegenContext, parent: CodegenSupport): String = {
     this.parent = parent
-    ctx.freshNamePrefix = nodeName
+    ctx.freshNamePrefix = variablePrefix
     doProduce(ctx)
   }
 
@@ -94,7 +101,7 @@ trait CodegenSupport extends SparkPlan {
       child: SparkPlan,
       input: Seq[ExprCode],
       row: String = null): String = {
-    ctx.freshNamePrefix = nodeName
+    ctx.freshNamePrefix = variablePrefix
     if (row != null) {
       ctx.currentVars = null
       ctx.INPUT_ROW = row
-- 
GitLab