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.


Reply via email to