cloud-fan commented on a change in pull request #27628: [SPARK-30858][SQL] Make 
IntegralDivide's dataType independent from SQL config changes
URL: https://github.com/apache/spark/pull/27628#discussion_r381090086
 
 

 ##########
 File path: 
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/arithmetic.scala
 ##########
 @@ -403,11 +403,18 @@ case class Divide(left: Expression, right: Expression) 
extends DivModLike {
   """,
   since = "3.0.0")
 // scalastyle:on line.size.limit
-case class IntegralDivide(left: Expression, right: Expression) extends 
DivModLike {
+case class IntegralDivide(
+    left: Expression,
+    right: Expression,
+    returnLong: Boolean) extends DivModLike {
 
 Review comment:
   can we just add a `private val returnLong = 
SQLConf.get.integralDivideReturnLong` in the class body? Then the config value 
is fixed when the expression is created. And it can be serialized to executors.
   
   The spark Expression constructor is kind of exposed to end users when they 
call functions in SQL. BTW `Cast` already use a `val` to store config values.
   

----------------------------------------------------------------
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:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to