[
https://issues.apache.org/jira/browse/DERBY-672?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rick Hillegas updated DERBY-672:
--------------------------------
Attachment: derby-672-12-aa-implicitCasts.diff
Attaching derby-672-12-aa-implicitCasts.diff. This patch attempts to make
datatype coercion work for user-defined aggregates the way that it works for
function arguments. I am running regression tests now.
This patch makes two noteworthy changes:
1) The input arg to the user-defined aggregate is wrapped in a CAST node if we
would do the same thing when invoking a similar user-defined function on that
argument.
2) Input datatype checking for user-defined aggregates is relaxed. Instead of
demanding exact type match, we check to see whether the actual datatype can be
stored in the expected type. This is what we do for user-defined functions.
This allows implicit casting to occur at runtime.
Touches the following files:
--------------
M java/engine/org/apache/derby/impl/sql/compile/AggregateNode.java
M
java/engine/org/apache/derby/impl/sql/compile/UserAggregateDefinition.java
M java/engine/org/apache/derby/impl/sql/compile/StaticMethodCallNode.java
Changes needed for (1) and (2).
--------------
M
java/testing/org/apache/derbyTesting/functionTests/tests/lang/UserDefinedAggregatesTest.java
Additional tests.
> Re-enable user defined aggregates
> ---------------------------------
>
> Key: DERBY-672
> URL: https://issues.apache.org/jira/browse/DERBY-672
> Project: Derby
> Issue Type: Improvement
> Components: SQL
> Reporter: Rick Hillegas
> Assignee: Rick Hillegas
> Attachments: derby-672-01-aa-ddl.diff,
> derby-672-02-ac-nonDistinct.diff, derby-672-03-aa-distinct.diff,
> derby-672-03-ab-distinct.diff, derby-672-04-aa-fixJSR169test.diff,
> derby-672-05-aa-java7testOrderProblem.diff, derby-672-06-aa-grantRevoke.diff,
> derby-672-07-aa-fixJSR169again.diff, derby-672-08-aa-fixJSR169yetAgain.diff,
> derby-672-09-ab-udtAggregates.diff, derby-672-10-af-typeBounds.diff,
> derby-672-11-aa-tests.diff, derby-672-11-ab-tests.diff,
> derby-672-12-aa-implicitCasts.diff, UserDefinedAggregates.html,
> UserDefinedAggregates.html
>
>
> Nicolas Dufour in an email thread titled "functions and list" started on
> November 2, 2005 requests the ability to create user defined aggregates.
> This functionality used to be in Cloudscape. It was disabled presumably
> because it was considered non-standard. However, most of the machinery needed
> for this feature is still in the code. We should re-enable user defined
> aggregates after we agree on acceptable syntax.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira