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/09/02 00:36:23 UTC

[jira] Updated: (DERBY-1700) Remove passing of closeCleanup method to every ResultSet type since only the top ResultSet requires it.

     [ http://issues.apache.org/jira/browse/DERBY-1700?page=all ]

Daniel John Debrunner updated DERBY-1700:
-----------------------------------------

    Attachment: derby1700_diff_p1.txt

Patch that removes the generation of the close cleanup method in the generated class.
Always pass null to the ResultSetFactoryMethods to indicate no cleanup method (so none is ever called)

Cleanup method is not required as the execute method has generated code to reset/forgt the current time handling.
Only benefit is to null out three objects for possible early garbage collection.

This is a first patch using incremental development. I will commit soon, all tests have passed.

> Remove passing of closeCleanup method to every ResultSet type since only the top ResultSet requires it.
> -------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1700
>                 URL: http://issues.apache.org/jira/browse/DERBY-1700
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>            Reporter: Daniel John Debrunner
>         Assigned To: Daniel John Debrunner
>            Priority: Minor
>         Attachments: derby1700_diff_p1.txt
>
>
> A UNION node will generate byte code to call this method:
> NoPutResultSet getUnionResultSet(NoPutResultSet source1,
> NoPutResultSet source2,
> Activation activation,
> int resultSetNumber,
> double optimizerEstimatedRowCount,
> double optimizerEstimatedCost,
> GeneratedMethod closeCleanup)
> The closeCleanup method is passed in as null for all result sets in a tree except the top one. Instead of passing it on each new result set, it would be much more efficient to have a setCloseMethod() that is only called once for the top result set.  Could also look at having an closeCleanup method in the interface and call it directly, rather than through reflection.
> This applies to any node that takes a closeCleanup method.
> Split out from DERBY-766

-- 
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