You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by cl...@apache.org on 2018/08/12 20:34:16 UTC
[1/2] activemq-artemis git commit: ARTEMIS-2025 Ensure correct
calculation of message body size
Repository: activemq-artemis
Updated Branches:
refs/heads/master 3ac7b9aef -> 2ec8927ae
ARTEMIS-2025 Ensure correct calculation of message body size
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/d6d73c7f
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/d6d73c7f
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/d6d73c7f
Branch: refs/heads/master
Commit: d6d73c7f2372e211022c5aca7f0052e84170a6f0
Parents: 3ac7b9a
Author: Martyn Taylor <mt...@redhat.com>
Authored: Sun Aug 12 15:12:11 2018 +0100
Committer: Clebert Suconic <cl...@apache.org>
Committed: Sun Aug 12 16:33:49 2018 -0400
----------------------------------------------------------------------
.../core/client/impl/ClientMessageImpl.java | 3 ++-
.../artemis/core/message/impl/CoreMessage.java | 2 +-
.../tests/integration/ra/JMSContextTest.java | 26 ++++++++++++++++++++
3 files changed, 29 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/d6d73c7f/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/client/impl/ClientMessageImpl.java
----------------------------------------------------------------------
diff --git a/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/client/impl/ClientMessageImpl.java b/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/client/impl/ClientMessageImpl.java
index 8068aa9..d14c64e 100644
--- a/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/client/impl/ClientMessageImpl.java
+++ b/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/client/impl/ClientMessageImpl.java
@@ -189,7 +189,8 @@ public class ClientMessageImpl extends CoreMessage implements ClientMessageInter
@Override
public int getBodySize() {
- return getBodyBuffer().writerIndex() - getBodyBuffer().readerIndex();
+ checkEncode();
+ return endOfBodyPosition - BUFFER_HEADER_SPACE;
}
@Override
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/d6d73c7f/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/message/impl/CoreMessage.java
----------------------------------------------------------------------
diff --git a/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/message/impl/CoreMessage.java b/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/message/impl/CoreMessage.java
index 0918828..323d9f4 100644
--- a/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/message/impl/CoreMessage.java
+++ b/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/message/impl/CoreMessage.java
@@ -308,7 +308,7 @@ public class CoreMessage extends RefCountMessage implements ICoreMessage {
sendBuffer.readerIndex(0);
}
- private synchronized void checkEncode() {
+ protected synchronized void checkEncode() {
if (!validBuffer) {
encode();
}
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/d6d73c7f/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/ra/JMSContextTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/ra/JMSContextTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/ra/JMSContextTest.java
index 6956499..658b323 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/ra/JMSContextTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/ra/JMSContextTest.java
@@ -16,8 +16,13 @@
*/
package org.apache.activemq.artemis.tests.integration.ra;
+import javax.jms.JMSConsumer;
import javax.jms.JMSContext;
+import javax.jms.JMSProducer;
import javax.jms.JMSRuntimeException;
+import javax.jms.MessageFormatRuntimeException;
+import javax.jms.Queue;
+import javax.jms.TextMessage;
import javax.transaction.TransactionManager;
import java.util.HashSet;
import java.util.Set;
@@ -143,4 +148,25 @@ public class JMSContextTest extends ActiveMQRATestBase {
assertEquals(context.getSessionMode(), JMSContext.AUTO_ACKNOWLEDGE);
}
+ @Test
+ public void testJMSContextConsumerThrowsMessageFormatExceptionOnMalformedBody() throws Exception {
+ Queue queue = createQueue(true, "ContextMalformedBodyTestQueue");
+
+ JMSContext context = qraConnectionFactory.createContext();
+ JMSProducer producer = context.createProducer();
+
+ TextMessage message = context.createTextMessage("TestMessage");
+ producer.send(queue, message);
+
+ JMSConsumer consumer = context.createConsumer(queue);
+
+ try {
+ consumer.receiveBody(Boolean.class);
+ fail("Should thrown MessageFormatException");
+ } catch (MessageFormatRuntimeException mfre) {
+ // Do nothing test passed
+ } catch (Exception e) {
+ fail("Threw wrong exception, should be MessageFormatRuntimeException, instead got: " + e.getClass().getCanonicalName());
+ }
+ }
}
[2/2] activemq-artemis git commit: This closes #2240
Posted by cl...@apache.org.
This closes #2240
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/2ec8927a
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/2ec8927a
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/2ec8927a
Branch: refs/heads/master
Commit: 2ec8927ae79342ccb58379af7c060a26840cedb3
Parents: 3ac7b9a d6d73c7
Author: Clebert Suconic <cl...@apache.org>
Authored: Sun Aug 12 16:34:01 2018 -0400
Committer: Clebert Suconic <cl...@apache.org>
Committed: Sun Aug 12 16:34:01 2018 -0400
----------------------------------------------------------------------
.../core/client/impl/ClientMessageImpl.java | 3 ++-
.../artemis/core/message/impl/CoreMessage.java | 2 +-
.../tests/integration/ra/JMSContextTest.java | 26 ++++++++++++++++++++
3 files changed, 29 insertions(+), 2 deletions(-)
----------------------------------------------------------------------