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 "Kristian Waagan (JIRA)" <ji...@apache.org> on 2009/03/03 15:00:57 UTC

[jira] Updated: (DERBY-4023) Improve length caching in TemporaryClob

     [ https://issues.apache.org/jira/browse/DERBY-4023?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kristian Waagan updated DERBY-4023:
-----------------------------------

    Attachment: derby-4023-2a-utf8_aware_copy_content.diff

Patch 2b adds a UTF-8 aware copy method.
It avoids having to decode the stream first to calculate the byte length based on the character length.
With a CLOB of 30 MB:
 o testLargeClobGetLengthModified :  9814 ms to 7009 ms
 o testLargeClobTruncateLengthMinusOne : 2538 ms to 1455 ms

This is work in progress, I haven't run the regression tests yet.
Patch ready for review.

> Improve length caching in TemporaryClob
> ---------------------------------------
>
>                 Key: DERBY-4023
>                 URL: https://issues.apache.org/jira/browse/DERBY-4023
>             Project: Derby
>          Issue Type: Improvement
>          Components: JDBC
>    Affects Versions: 10.4.2.0, 10.5.0.0
>            Reporter: Kristian Waagan
>            Assignee: Kristian Waagan
>            Priority: Minor
>             Fix For: 10.5.0.0
>
>         Attachments: derby-4023-1a-cache_length_simple.diff, derby-4023-2a-utf8_aware_copy_content.diff
>
>
> TemporaryClob doesn't save the known length of the Clob in all situations.
> The following places in the code should be improved (some easier than others):
>  a) TemporaryClob(String,ConChild)
>  b) copyClobContent(InternalClob,long) (non-static)
>  c) copyClobContent(InternalClob) (non-static)
> There might be additional places to fix too.

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