rednaxelafx commented on a change in pull request #24735: [SPARK-27871][SQL] 
LambdaVariable should use per-query unique IDs instead of globally unique IDs
URL: https://github.com/apache/spark/pull/24735#discussion_r288705981
 
 

 ##########
 File path: 
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/objects/objects.scala
 ##########
 @@ -595,12 +623,15 @@ case class LambdaVariable(
   }
 
   override def genCode(ctx: CodegenContext): ExprCode = {
-    val isNullValue = if (nullable) {
-      JavaCode.isNullVariable(isNull)
+    // The id can be negative if it's reassigned by `ReassignLambdaVariableID`.
+    val suffix = "lambda_variable_" + math.abs(id)
 
 Review comment:
   There an implicitly assumption here that within a plan, all the 
`LambdaVariable`s either hold IDs that were the original IDs (positive) or the 
reassigned ones (negative). We should probably add a comment on that, because 
if the positive/negative ones are mixed together, you can actually get a 
conflict when you do `abs`.

----------------------------------------------------------------
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:
us...@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to