[ http://issues.apache.org/jira/browse/DERBY-121?page=all ]
A B updated DERBY-121:
----------------------
Attachment: derby-121_3.patch
Modified patch so that lobLengthTests.java uses a table name that correctly
indicates the size of the test table we're using.
Also, per Kathey M's request, I'm including a "check-in comment" here:
----
1) Change Network Server and Derby Client code to do correct bit-shifting when
processing the length of LOBs that are larger than 2^24 bytes (DERBY-121). 2)
Add a new suite, "largeData", for running tests that require extra machine
resources, and add the test for DERBY-121 to that suite (because the test for
DERBY-121 requires extra heap memory for the server's JVM).
----
> Network Server reading blob/clob data size
> ------------------------------------------
>
> Key: DERBY-121
> URL: http://issues.apache.org/jira/browse/DERBY-121
> Project: Derby
> Type: Bug
> Components: Network Server
> Versions: 10.1.0.0
> Environment: The is a bit shift typo in Network Server reading clob/blob
> data size
> Reporter: Lynh Nguyen
> Assignee: A B
> Priority: Minor
> Attachments: derby-121_2.stat, derby-121_3.patch
>
> in DDMReader.java
> ...
> ... readLengthAndCodePoint() ... {
> ...
> switch (numberOfExtendedLenBytes) {
> case 8:
> ddmScalarLen =
> ((buffer[pos++] & 0xff) << 64) +
> ((buffer[pos++] & 0xff) << 56) +
> ((buffer[pos++] & 0xff) << 48) +
> ((buffer[pos++] & 0xff) << 40) +
> ((buffer[pos++] & 0xff) << 32) +
> ((buffer[pos++] & 0xff) << 16) +
> ((buffer[pos++] & 0xff) << 8) +
> ((buffer[pos++] & 0xff) << 0);
> adjustSize = 12;
> break;
> case 6:
> ddmScalarLen =
> ((buffer[pos++] & 0xff) << 48) +
> ((buffer[pos++] & 0xff) << 40) +
> ((buffer[pos++] & 0xff) << 32) +
> ((buffer[pos++] & 0xff) << 16) +
> ((buffer[pos++] & 0xff) << 8) +
> ((buffer[pos++] & 0xff) << 0);
> adjustSize = 10;
> break;
> case 4:
> ddmScalarLen =
> ((buffer[pos++] & 0xff) << 32) +
> ((buffer[pos++] & 0xff) << 16) +
> ((buffer[pos++] & 0xff) << 8) +
> ((buffer[pos++] & 0xff) << 0);
> adjustSize = 8;
> break;
> ...
> The shift bits should be in order:
> 0,8,16,24
> 0,8,16,24,32,40
> 0,8,16,24,32,40,48,56
> This will only affect the larger clob/blob (over 64K ...)
--
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