You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Daniel John Debrunner (JIRA)" <de...@db.apache.org> on 2006/01/30 03:27:14 UTC

[jira] Reopened: (DERBY-475) Add a system function mechanism and table of functions, including a set of initial functions.

     [ http://issues.apache.org/jira/browse/DERBY-475?page=all ]
     
Daniel John Debrunner reopened DERBY-475:
-----------------------------------------


These new match functions should use the methods in the class java.lang.StrictMath instead of java.lang.Math. Provides consistent/portable behaviour across different JVMs.

> Add a system function mechanism and table of  functions, including a set of initial functions.
> ----------------------------------------------------------------------------------------------
>
>          Key: DERBY-475
>          URL: http://issues.apache.org/jira/browse/DERBY-475
>      Project: Derby
>         Type: Improvement
>   Components: SQL
>     Reporter: Daniel John Debrunner
>     Assignee: Daniel John Debrunner
>      Fix For: 10.2.0.0

>
> Add a mechanism for system functions to be easily added. Resolution of functions will check SYSFUN.<name> for a function call in SQL when the function is not qualified by a schema. If the current schema does not have a function matching the name, then an additional resolution is made using SYSFUN.<name>.
> Add a table driven mechanism for simple single argument functions (could be expanded in the future).
> Add these functions
> /*
> ** SYSFUN functions
> *[0] = FUNCTION name
> *[1] = RETURNS type
> *[2] = Java class
> *[3] = method name
> *[4] = parameter type (single parameter)
> *
> */
> private static final String[][] SYSFUN_FUNCTIONS = {
> {"ACOS", "DOUBLE", "java.lang.Math", "acos", "DOUBLE"},
> {"ASIN", "DOUBLE", "java.lang.Math", "asin", "DOUBLE"},
> {"ATAN", "DOUBLE", "java.lang.Math", "atan", "DOUBLE"},
> {"COS", "DOUBLE", "java.lang.Math", "cos", "DOUBLE"},
> {"SIN", "DOUBLE", "java.lang.Math", "sin", "DOUBLE"},
> {"TAN", "DOUBLE", "java.lang.Math", "tan", "DOUBLE"},
> {"DEGREES", "DOUBLE", "java.lang.Math", "toDegrees", "DOUBLE"},
> {"RADIANS", "DOUBLE", "java.lang.Math", "toRadians", "DOUBLE"},
> {"LN", "DOUBLE", "java.lang.Math", "log", "DOUBLE"},
> {"EXP", "DOUBLE", "java.lang.Math", "exp", "DOUBLE"},
> {"CEIL", "DOUBLE", "java.lang.Math", "ceil", "DOUBLE"},
> {"CEILING", "DOUBLE", "java.lang.Math", "ceil", "DOUBLE"},
> {"FLOOR", "DOUBLE", "java.lang.Math", "floor", "DOUBLE"},
> };

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira