[ http://issues.apache.org/jira/browse/DERBY-121?page=all ]

A B reassigned DERBY-121:
-------------------------

    Assign To: A B

> 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.patch, derby-121_2.stat
>
> 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

Reply via email to