db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel John Debrunner (JIRA)" <derby-...@db.apache.org>
Subject [jira] Updated: (DERBY-1700) Remove passing of closeCleanup method to every ResultSet type since only the top ResultSet requires it.
Date Wed, 20 Sep 2006 18:19:24 GMT
     [ http://issues.apache.org/jira/browse/DERBY-1700?page=all ]

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

    Attachment: derby1700_diff_p3.txt

Patch derby1700_diff_p3.txt - will commit soon, all tests pass.

Next step that changes the methods in ResultSetFactory not to have a closeCleanup method parameter
which due to the previous patches was always being passed in as null. Changed all callers
to not pass the null and thus remove the closeMethodArgument in ResultSetNode.

Since most of the calls are to ResultSetFactory  methods are by generated code cannot rely
on compile time checks to ensure all callers are correct. Needed to reduced the argument count
by one for the generated method call for any getXXXResultSet that no longer passes the closeCleanup
(null) argument.  Have confidence in the change as derbyall passes and the code coverage numbers
at http://wiki.apache.org/db-derby/CodeCoverage show complete coverage of these factory methods
except for ones related to VTIs.

> 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, derby1700_diff_p2.txt, derby1700_diff_p3.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

        

Mime
View raw message