db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kristian Waagan (JIRA)" <derby-...@db.apache.org>
Subject [jira] Updated: (DERBY-1473) Add cut-off and truncation logic to streaming classes in the embedded driver
Date Thu, 10 Aug 2006 01:34:15 GMT
     [ http://issues.apache.org/jira/browse/DERBY-1473?page=all ]

Kristian Waagan updated DERBY-1473:

    Attachment: derby-1473-1a-streaming.diff

'derby-1473-1a-streaming.diff' adds the capability to handle length less streams properly.
Such streams are now capped at the maximum length of the column it is inserted into. If the
stream is longer than the limit, a DerbyIOException (subclass of IOException) is thrown, causing
a statement severity StandardException to be thrown. The exception handling system takes care
of cleaning up.

If a stream is shorter or longer than the specified length, an exception is thrown as required
by JDBC 3.0.
How the exceptions thrown by the streaming classes are reported, differ between embedded and
client. DERBY-1657 tracks this (see also DERBY-1658).

I decided to split the changes to the engine and the testing into different patches. A testing
patch will be submitted shortly. Note that both patches must be commited before derbyall is
run, or else some tests will fail (characterStreams, resultSetStream and streamingColumn).
derbyall passed, but due to a last minute change I am doing another run (will post result

Patch ready for review/commit. The committer needs to add a new file (see stat file).

> Add cut-off and truncation logic to streaming classes in the embedded driver
> ----------------------------------------------------------------------------
>                 Key: DERBY-1473
>                 URL: http://issues.apache.org/jira/browse/DERBY-1473
>             Project: Derby
>          Issue Type: Improvement
>          Components: JDBC
>    Affects Versions:
>            Reporter: Kristian Waagan
>         Assigned To: Kristian Waagan
>             Fix For:
>         Attachments: derby-1473-1a-streaming.diff, derby-1473-1a-streaming.stat
> When streaming data to Derby, the application stream will be wrapped in a Derby-specific
stream to convert the data to the correct representation. At a minimum, this consists of getting
the data to the on-disk format used by Derby.
> The wrapping stream can be extended to provide the following features at an earlier stage:
>  a) Data cut-off when the maximum allowed size is exceeded
>  b) Truncation of trailing blanks where allowed
> Both features can reduce the amount of data needed to be kept in memory on insertion.
> Implementing this will require additional column/data type information in the streaming
class(es). The implementation must be able to handle streams for which the length is specified
and also streams with unknown/unspecified length.

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


View raw message