[ http://issues.apache.org/jira/browse/DERBY-1101?page=comments#action_12370247 ]
Daniel John Debrunner commented on DERBY-1101: ---------------------------------------------- This code if (theResults instanceof TemporaryRowHolderResultSet || is pushing knowledge of the underlying implementation layers up into the JDBC layer, ideally JDBC layer should just be dealing with the interfaces specified by the language layer. I have a long term idea for improving performance by removing most/all runtime statistics code from any language ResultSet implementation, and instead having it in a single delegation/wrapper language ResultSet. Thus when runtime statistics is enabled each real implementation of a language ResultSet would be wrapped in one of these runtime statistics that would maintain costs, timing etc. Currently this is not an easy change because there is code that performs specific instanceof checks on ResultSet references in various places, which is really a breakdown of modularity. I'd be more interested to know why TemporaryRowHolderResultSet is breaking the contract of getActivation. Not sure why a field is needed in EmbedResultSet, when the activation already maintains the state, it seems a bug to me that TemporaryRowHolderResultSet is not honouring its contract. > ResultSet.getHoldabilty will return incorrect value when the ResultSet is > obtained from a procedure call > -------------------------------------------------------------------------------------------------------- > > Key: DERBY-1101 > URL: http://issues.apache.org/jira/browse/DERBY-1101 > Project: Derby > Type: Bug > Components: JDBC > Versions: 10.2.0.0 > Reporter: Daniel John Debrunner > Priority: Minor > Attachments: testderby1101.java > > EmbedResultSet40.getHoldability returns the holdability of the statement > returned by ResultSet.getStatement(). > When a ResultSet is created by a procedure call, its holdability may not > match the holdability of the Statement that called the procedure, which is > probably what ResultSet.getStatement() should return. > This may not be exposed as a bug yet, but I think this method should be > directly obtaining the holdability of the ResultSet using the > Activation.getResultSetHoldability() method, rather than through a Statement. > Seems a safer approach. -- 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