[
https://issues.apache.org/jira/browse/CALCITE-6622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17890540#comment-17890540
]
Julian Hyde commented on CALCITE-6622:
--------------------------------------
Can you check the doc of major vendors - Postgres, Oracle, BigQuery, Snowflake
- to make sure that none of them throw?
> Negative logarithms should return NaN or -Inf, not throw an
> IllegalArgumentException
> ------------------------------------------------------------------------------------
>
> Key: CALCITE-6622
> URL: https://issues.apache.org/jira/browse/CALCITE-6622
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.38.0
> Reporter: Claude Brisson
> Priority: Minor
>
> Since |CALCITE-6312], {{log}} functions in {{SqlFunctions}} do throw an
> {{{}IllegalArgumentException{}}}, instead as an {{ArithmeticException}} as
> before.
> In terms of errors categorization, it is more precise to revert to the former
> behavior, as {{IllegalArgumentException}} is more suited to structural errors
> which do not depend on the actual values, whereas we would expect negative
> logarithms to throw the same kind of error as an integer division by zero for
> instance.
> An engine implementation could choose to have a different behaviors depending
> on the thrown errors, for instance to just abort the constants reduction for
> an illegal argument versus letting the arithmetic exception propagate to
> alert the user.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)