Github user cloud-fan commented on a diff in the pull request:

    https://github.com/apache/spark/pull/22630#discussion_r223525444
  
    --- Diff: 
sql/core/src/main/scala/org/apache/spark/sql/execution/basicPhysicalOperators.scala
 ---
    @@ -452,46 +452,73 @@ case class RangeExec(range: 
org.apache.spark.sql.catalyst.plans.logical.Range)
     
         val localIdx = ctx.freshName("localIdx")
         val localEnd = ctx.freshName("localEnd")
    -    val range = ctx.freshName("range")
         val shouldStop = if (parent.needStopCheck) {
    -      s"if (shouldStop()) { $number = $value + ${step}L; return; }"
    +      s"if (shouldStop()) { $nextIndex = $value + ${step}L; return; }"
         } else {
           "// shouldStop check is eliminated"
         }
    +    val loopCondition = if (limitNotReachedChecks.isEmpty) {
    +      "true"
    +    } else {
    +      limitNotReachedChecks.mkString(" && ")
    --- End diff --
    
    This is whole-stage-codege. If bytecode overfolow happens, we will fallback


---

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

Reply via email to