[
https://issues.apache.org/jira/browse/DERBY-6127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13765375#comment-13765375
]
Rick Hillegas commented on DERBY-6127:
--------------------------------------
Hi Kim,
Yes, the Developer's Guide topic should probably mention this requirement.
About your second question: Grouped aggregation is a task shared between Derby
and the UDA. Derby is responsible for the grouping, that is, for dividing the
rows into groups. The UDA is responsible for the aggregation, one row at a time.
Thanks,
-Rick
> Tell users to make sure that the state of a user-defined aggregate needs to
> be serializable
> -------------------------------------------------------------------------------------------
>
> Key: DERBY-6127
> URL: https://issues.apache.org/jira/browse/DERBY-6127
> Project: Derby
> Issue Type: Improvement
> Components: Documentation
> Affects Versions: 10.10.1.1
> Reporter: Rick Hillegas
> Assignee: Kim Haase
>
> The Reference Manual section on "CREATE DERBY AGGREGATE statement" should
> tell users to make sure that all of the state of their user-defined aggregate
> is really serializable. This is because the Aggregator interface extends
> java.io.Serializable. A user-defined aggregate may end up being serialized to
> disk when performing grouped aggregation over a large number of groups. That
> is, intermediate results may be serialized to disk for a query like the
> following. The serialization will fail if the user-defined aggregate contains
> non-serializable fields:
> select a, myAggregate( b ) from myTable group by a
--
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