You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2017/09/20 19:52:00 UTC
[jira] [Resolved] (AMQ-6809) activemq-client returns unexpected
length code on first read from stream containing empty byte array
[ https://issues.apache.org/jira/browse/AMQ-6809?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Timothy Bish resolved AMQ-6809.
-------------------------------
Resolution: Fixed
Assignee: Timothy Bish
Fix Version/s: 5.16.0
5.15.1
> activemq-client returns unexpected length code on first read from stream containing empty byte array
> ----------------------------------------------------------------------------------------------------
>
> Key: AMQ-6809
> URL: https://issues.apache.org/jira/browse/AMQ-6809
> Project: ActiveMQ
> Issue Type: Bug
> Components: JMS client
> Affects Versions: 5.14.5
> Reporter: Jiri Daněk
> Assignee: Timothy Bish
> Priority: Minor
> Fix For: 5.15.1, 5.16.0
>
>
> Consider this code
> {code}
> private void testEmptyBufferInput() throws JMSException {
> byte[] readList = new byte[BYTE_LIST.length - 1];
> byte[] emptyList = {};
> LOG.info("Streaming BYTE_LIST message testing EMPTY buffer input");
> stream.writeBytes(emptyList);
> stream.reset();
> LOG.info("Reading BYTE_LIST message testing EMPTY buffer input");
> final int IS_EMPTY = 0;
> assertThat(stream.readBytes(readList)).isEqualTo(IS_EMPTY);
> }
> {code}
> The code above works with qpid-jms, but fails with activemq-client on the {{assertThat}} with error message {{java.lang.AssertionError: Not true that <-1> is equal to <0>}}. Judging by documentation http://docs.oracle.com/javaee/6/api/javax/jms/StreamMessage.html#readBytes(byte[]), I think that qpid-jms behavior is correct and what activemq-client does is a bug.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)