gengliangwang commented on a change in pull request #25461: [SPARK-28741][SQL]Throw exceptions when casting to integers causes overflow URL: https://github.com/apache/spark/pull/25461#discussion_r316925504
########## File path: sql/catalyst/src/main/scala/org/apache/spark/sql/types/Decimal.scala ########## @@ -232,12 +232,149 @@ final class Decimal extends Ordered[Decimal] with Serializable { } } + /** + * @return the Long value that is equal to the rounded decimal. + * @throws ArithmeticException if checkOverflow is true and + * the decimal too big to fit in Long type. + */ + def toLong(checkOverflow: Boolean): Long = { Review comment: Then all the other function calls `toLong` should be at least add parentheses as `toLong()`. Since Scala only allows Arity-0 https://docs.scala-lang.org/style/method-invocation.html#arity-0 to omit parentheses. My two concerns here: 1. The existing external code calling `Decimal.toLong` will fail 2. The usage will be different from the trait `Numeric` ---------------------------------------------------------------- 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