You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Robbie Gemmell (JIRA)" <ji...@apache.org> on 2019/05/29 18:51:00 UTC

[jira] [Updated] (PROTON-2057) small/array8 primitive arrays over 128 bytes fail to encode

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

Robbie Gemmell updated PROTON-2057:
-----------------------------------
    Affects Version/s: proton-j-0.30.0
                       proton-j-0.31.0
                       proton-j-0.33.0
        Fix Version/s: proton-j-0.34.0
          Description: 
While encoding a small/array8 primitive array with >=128 bytes content (and obviously <=255 bytes given array8 type), an exception will be thrown. The array size is being stored in a byte variable, which can be negative, for later writing out as a raw 1byte size field during the encoding. The value was mistakengly also being used to facilitate checking for buffer capacity or expansion, which can fail due to the potentially negative value if the array is in the appropate size range.

This was introduced during proton-j 0.30.0 changes for PROTON-1941.

 

================
 Original Description:

Receiving a AMQP short array (length less than 256) with qpid-jms-client causes this error in log:

[AmqpProvider :(1):[amqp://localhost:5672]] WARN o.a.q.j.p.a.AmqpConsumer - Error on transform: minWritableBytes: -92 (expected: >= 0)

The message is still kept in queue.

  was:
Receiving a AMQP short array (length less than 256) with qpid-jms-client causes this error in log:

 

[AmqpProvider :(1):[amqp://localhost:5672]] WARN o.a.q.j.p.a.AmqpConsumer - Error on transform: minWritableBytes: -92 (expected: >= 0)

 

The message is still kept in queue.

 

              Summary: small/array8 primitive arrays over 128 bytes fail to encode  (was: AMQP short array is not decoded correctly)

> small/array8 primitive arrays over 128 bytes fail to encode
> -----------------------------------------------------------
>
>                 Key: PROTON-2057
>                 URL: https://issues.apache.org/jira/browse/PROTON-2057
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-j
>    Affects Versions: proton-j-0.30.0, proton-j-0.31.0, proton-j-0.32.0, proton-j-0.33.0
>         Environment: OS: RHEL 7.2
> JRE: OpenJDK Runtime Environment (build 1.8.0_102-b14)
> proton-j 0.32.0 and 0.33.0
> qpid-jms-client 0.41.0 and 0.42.0
>            Reporter: Ang Iongchun
>            Assignee: Robbie Gemmell
>            Priority: Major
>             Fix For: proton-j-0.34.0
>
>
> While encoding a small/array8 primitive array with >=128 bytes content (and obviously <=255 bytes given array8 type), an exception will be thrown. The array size is being stored in a byte variable, which can be negative, for later writing out as a raw 1byte size field during the encoding. The value was mistakengly also being used to facilitate checking for buffer capacity or expansion, which can fail due to the potentially negative value if the array is in the appropate size range.
> This was introduced during proton-j 0.30.0 changes for PROTON-1941.
>  
> ================
>  Original Description:
> Receiving a AMQP short array (length less than 256) with qpid-jms-client causes this error in log:
> [AmqpProvider :(1):[amqp://localhost:5672]] WARN o.a.q.j.p.a.AmqpConsumer - Error on transform: minWritableBytes: -92 (expected: >= 0)
> The message is still kept in queue.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org