[ 
http://issues.apache.org/jira/browse/DERBY-815?page=comments#action_12364831 ] 

A B commented on DERBY-815:
---------------------------

Good catch.  Actually, I think the error in embedded mode is probably correct, 
given the repro I posted.  When we insert the 3rd row, we do two setBlobs and 
two setClobs; for the fourth row, we do a setNull for one of the blobs and for 
one of the clobs (params 7 and 9) but do not re-set the others (params 6 and 
8), and hence this error occurs because we're trying to re-use the lob streams. 
 If you add the following two lines to the block for the 4th row:

    pSt.setBlob(6, rs.getBlob(6));
    pSt.setClob(8, rs.getClob(8));

then the test case will pass with embedded and still show the regression hang 
against the client.  As for why the client didn't throw an error, I think it's 
because materialization of the lobs occurs on the client/server, so we're not 
reusing a "stream" per se, we're just reusing the materialized versions of the 
lobs.  I believe this is related to DERBY-326 and DERBY-550... (thanks to 
Sunitha for the pointers!).

> Prevent unneeded object creation and excessive decoding in parseSQLDTA_work()
> -----------------------------------------------------------------------------
>
>          Key: DERBY-815
>          URL: http://issues.apache.org/jira/browse/DERBY-815
>      Project: Derby
>         Type: Sub-task
>   Components: Network Server, Performance
>     Versions: 10.1.1.0, 10.1.1.1, 10.1.1.2, 10.1.2.0, 10.1.2.1, 10.1.3.0, 
> 10.1.2.2, 10.0.2.2
>     Reporter: Knut Anders Hatlen
>     Priority: Minor
>      Fix For: 10.2.0.0
>  Attachments: d815_regress.diff, d815_regress.java, d815_regress.stat, 
> d815_regress_derbyall_report.txt, derby-815.diff, derby-815.stat, derby.log, 
> derbyall_report.txt
>
> Reported by Kathey Marsden in DERBY-212:
> In reviewing the Network Server Code and profiling there were several
> areas that showed potential for providing performance
> improvement. Functions that need optimizing to prevent unneeded object
> creation and excessive decoding: parseSQLDTA_work()

-- 
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

Reply via email to