[ 
https://issues.apache.org/jira/browse/DERBY-6447?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13864529#comment-13864529
 ] 

Knut Anders Hatlen commented on DERBY-6447:
-------------------------------------------

Also, the implementations in SystemProcedures suffer from overflow problems. 
For example, SystemProcedures.TANH() returns NaN if the argument is very high, 
which results in an error:

{noformat}
ij> values tanh(1.7E308);
1                       
------------------------
ERROR 22003: The resulting value is outside the range for the data type DOUBLE.
{noformat}

If StrictMath.tanh() had been used instead, it would have returned 1.0.

> Use StrictMath for more functions in SYSFUN
> -------------------------------------------
>
>                 Key: DERBY-6447
>                 URL: https://issues.apache.org/jira/browse/DERBY-6447
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.11.0.0
>            Reporter: Knut Anders Hatlen
>            Priority: Minor
>
> Most of the functions in the SYSFUN schema use methods in 
> java.lang.StrictMath directly. A few of them use methods in SystemProcedures 
> instead. Java 1.5 added more methods to StrictMath, so it is now possible to 
> make more of the functions use StrictMath and drop the implementation in 
> SystemProcedures:
> - LOG10 could use StrictMath.log10()
> - COSH could use StrictMath.cosh()
> - SINH could use StrictMath.sinh()
> - TANH could use StrictMath.tanh()



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to