db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mamta A. Satoor (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-3037) Language ResultSet.finish() is called even when the ResultSet is going to be re-used.
Date Wed, 19 Dec 2007 21:26:43 GMT

     [ https://issues.apache.org/jira/browse/DERBY-3037?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Mamta A. Satoor updated DERBY-3037:
-----------------------------------

    Attachment: Derby_3037_AlterTableConstantActionChanges_v1_stat.txt
                Derby_3037_AlterTableConstantActionChanges_v1_diff.txt

With this patch(Derby_3037_AlterTableConstantActionChanges_v1_diff.txt), I am removing the
Language Resultset.finish from AlterTableConstantAction. In addition, like Dan mentioned,
what's being created in this part of AlterTableConstantAction is a single use activation which
should be closed when its language Resultset is closed. In order to achieve that, I have added
following code in NoRowsResultSetImpl.close to take care of the activation
+               if (activation.isSingleExecution())
+                       activation.close();

The derbyall and junit tests have run with no problems. I will go ahead and check this patch
by tomorrow. Any feedback?

Next task can be to move close of single use activation from BasicNoPutResultSet.finishAndRTS(line
607) into NoPutResultSetImpl.close. In other words, if Language Resultset associated with
single use activation is closed, we should close the activation too. Would like to know if
anyone has any feedback on this.


> Language ResultSet.finish() is called even when the ResultSet is going to be re-used.
> -------------------------------------------------------------------------------------
>
>                 Key: DERBY-3037
>                 URL: https://issues.apache.org/jira/browse/DERBY-3037
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.4.0.0
>            Reporter: Daniel John Debrunner
>            Assignee: Mamta A. Satoor
>             Fix For: 10.3.2.2, 10.4.0.0
>
>         Attachments: Derby_3037_AlterTableConstantActionChanges_v1_diff.txt, Derby_3037_AlterTableConstantActionChanges_v1_stat.txt
>
>
> DERBY-827 (correctly) changed the lifetime of the language ResultSet tree to be the lifetime
of the activation, but did not fix up the correct calls to ResultSet.close() and ResultSet.finish().
> A language ResultSet's lifetime should be driven by the activation, so activation.close()
should call finish() on its ResultSet.
> EmbedResultSet should call close on its language ResultSet (theResults field) when the
JDBC ResultSet is closed, it should not be calling finish() on its ResultSet.
> See comments in DERBY-827 for some more details and issues.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message