Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-684

Improve performance of Clob objects (ClobOutputStream#write,ClobWriter#write) on the client

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Won't Fix
    • 10.1.1.0, 10.1.2.1, 10.2.1.6
    • None
    • Network Client
    • None
    • all
    • Performance

    Description

      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.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              skambha Sunitha Kambhampati
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: