Mike Matrigali wrote: > > Is there anything in the standard that says what the second call to > the get the stream has to do? Imagine the case where the first > stream reads 1 gig of a 2 gig blob, does the second call to > getBinaryStream() have to return the 1st gig again?
Yes & no. Nothing in the JDBC spec doc, but the javadoc for java.sql.ResultSet has always had: " For maximum portability, result set columns within each row should be read in left-to-right order, and each column should be read only once." Thus, Derby could thrown an exception if there was a second getXXXStream call on the same column. > Any change that tries to cache the bytes returned by the first > getBinaryStream either in local client or network client code is > going to be a performance/memory drain. Agreed, we need to be careful here, we need to optmise the frequent case, getting the column's value once as-per JDBC. Dan.
