You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Myrna van Lunteren (JIRA)" <ji...@apache.org> on 2008/11/18 20:15:44 UTC

[jira] Commented: (DERBY-684) Improve performance of Clob objects (ClobOutputStream#write,ClobWriter#write) on the client

    [ https://issues.apache.org/jira/browse/DERBY-684?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12648709#action_12648709 ] 

Myrna van Lunteren commented on DERBY-684:
------------------------------------------

I've looked at what's remaining of this code, and it appears to me it's only still used when interfacing with servers without loblocator support. 
Which means it'd be harder to test (only with cross-version server/client testing, which we currently don't do automated), and it'd be work that only would affect a small number of customers.

I suggest we close this issue - the improvement of making the streams on demand, rather than on write - with no fix intended.
(The StringBufferInputStream is listed, and should be viewed under, DERBY-1256, not under this section).

> Improve performance of Clob objects (ClobOutputStream#write,ClobWriter#write) on the client
> -------------------------------------------------------------------------------------------
>
>                 Key: DERBY-684
>                 URL: https://issues.apache.org/jira/browse/DERBY-684
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Client, Newcomer, Performance
>    Affects Versions: 10.1.1.0, 10.1.2.1, 10.2.1.6
>         Environment: all
>            Reporter: Sunitha Kambhampati
>
> Dan suggested this improvement  here:
> http://issues.apache.org/jira/browse/DERBY-463?page=comments#action_12356742
> For org.apache.derby.client.am.ClobOutputStream#write(int), five objects are created for every byte written.
> "In fact this class and the client Clob have code like this everywhere, as the Clob is updated:
>         clob_.string_ = clob_.string_.concat(new String(newByte));
>         clob_.asciiStream_ = new java.io.StringBufferInputStream(clob_.string_);
>         clob_.unicodeStream_ = new java.io.StringBufferInputStream(clob_.string_);
>         clob_.characterStream_ = new java.io.StringReader(clob_.string_);
> Would probably be better to create most of those objects on demand, rather than on every modification. I mean if the CLOB is modified
> but the application never retrieives the ascii  or character streams, what was the benefit of creating them? "
> ________________
> Also check the org.apache.derby.client.am.ClobWriter.  Need to make this better and efficient. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.