[ http://issues.apache.org/jira/browse/DERBY-1227?page=comments#action_12422765 ] Sunitha Kambhampati commented on DERBY-1227: --------------------------------------------
Thanks Mike into looking at this. Here is the checkin comment: ------------------------------------------------------------------------------------------------------------------------------------- DERBY-1227 Network Server should not use the underlying embedded prepared statement when accessing a BrokeredPreparedStatement -- Added new interfaces EnginePreparedStatement and EngineParameterMetaData for use in network server. -- Made changes to server code to use these interfaces and thus have a consistent way of handling the PreparedStatement whether it is a EmbedPreparedStatement or BrokeredPreparedStatement. Backport from trunk, the original changes went as part of DERBY-1015. svn merge -r 421434:421435 https://svn.apache.org/repos/asf/db/derby/code/trunk/ svn merge -r 421459:421460 https://svn.apache.org/repos/asf/db/derby/code/trunk/ ------------------------------------------------------------------------------------------------------------------------------------- > Network Server should not use the underlying embedded prepared statement when > accessing a BrokeredPreparedStatement > ------------------------------------------------------------------------------------------------------------------- > > Key: DERBY-1227 > URL: http://issues.apache.org/jira/browse/DERBY-1227 > Project: Derby > Issue Type: Bug > Components: Network Server > Affects Versions: 10.1.2.1 > Reporter: Kathey Marsden > Assigned To: Sunitha Kambhampati > Fix For: 10.2.0.0 > > Attachments: 10.1_p1_derby1227.diff.txt > > > Network Server should not use the underlying embedded > Prepared statement when accessing a BrokeredPreparedStatement. > In DERBY-1025 Dan pointed out this code which while not related to DERBY-1025 > does appear to be a problem. Here is his comment regarding this code in > DRDAStatement: > /** > * Get prepared statement > * > * @return prepared statement > */ > protected PreparedStatement getPreparedStatement() throws SQLException > { > if (ps instanceof BrokeredPreparedStatement) > return (PreparedStatement)( > ((BrokeredPreparedStatement) ps).getStatement()); > else > return ps; > } > This code, for some unknown reason due to lack of comments, is getting the > underlying embedded statement > from a BrokeredPreparedStatement. This should not be allowed, the > BrokeredStatement wrappers are there to > hide the embedded statement object as it can change under the covers of the > wrapper. -- 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