This is an automated email from the ASF dual-hosted git repository.
clebertsuconic pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
The following commit(s) were added to refs/heads/main by this push:
new 6de6372 ARTEMIS-3553 -5718 Conversion of AMQP large message expiry
6de6372 is described below
commit 6de637259b5cd8356b510bde9227dcd7e22e966c
Author: Clebert Suconic <[email protected]>
AuthorDate: Wed Nov 3 21:07:47 2021 -0400
ARTEMIS-3553 -5718 Conversion of AMQP large message expiry
---
.../artemis/protocol/amqp/broker/AMQPLargeMessage.java | 3 +++
.../tests/integration/amqp/AmqpExpiredMessageTest.java | 14 +++++++++++---
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPLargeMessage.java
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPLargeMessage.java
index 36b03ea..1026eeb 100644
---
a/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPLargeMessage.java
+++
b/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPLargeMessage.java
@@ -70,6 +70,9 @@ public class AMQPLargeMessage extends AMQPMessage implements
LargeServerMessage
reader.readInto(wrapbuffer);
AMQPStandardMessage standardMessage = new
AMQPStandardMessage(messageFormat, buffer, extraProperties,
coreMessageObjectPools);
+ if (this.getExpiration() > 0) {
+ standardMessage.reloadExpiration(this.getExpiration());
+ }
standardMessage.setMessageAnnotations(messageAnnotations);
standardMessage.setMessageID(messageID);
return standardMessage.toCore();
diff --git
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpExpiredMessageTest.java
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpExpiredMessageTest.java
index d52ab17..a9c5d5c 100644
---
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpExpiredMessageTest.java
+++
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AmqpExpiredMessageTest.java
@@ -643,6 +643,17 @@ public class AmqpExpiredMessageTest extends
AmqpClientTestSupport {
server.start();
}
+ final Queue serverQueue = server.locateQueue(getQueueName());
+
+ try (LinkedListIterator<MessageReference> referenceIterator =
serverQueue.iterator()) {
+ while (referenceIterator.hasNext()) {
+ MessageReference ref = referenceIterator.next();
+ Assert.assertEquals(ref.getMessage().getExpiration(),
ref.getMessage().toCore().getExpiration());
+ Assert.assertTrue(ref.getMessage().getExpiration() > 0);
+ Assert.assertTrue(ref.getMessage().toCore().getExpiration() > 0);
+ }
+ }
+
final Queue dlqView = getProxyToQueue(getDeadLetterAddress());
Wait.assertEquals(2, dlqView::getMessageCount);
@@ -729,7 +740,4 @@ public class AmqpExpiredMessageTest extends
AmqpClientTestSupport {
}
-
-
-
}