Hello, I have a problem sending messages to artemis.
artemis-server version = 2.30(docker)
artemis-client version = 2.30
Artemis client configured like:
connectionFactory.setMinLargeMessageSize(999999999);
And i see that client send message as regular not large, but server
thinks its large
if (isLarge) { // False here
this.largeMessageSend(sendBlocking, msg, theCredits, handler);
} else {
this.sendRegularMessage(sendingAddress, msg,
sendBlocking, theCredits, handler);
}
And i got exception on the server:
org.apache.activemq.artemis.api.core.ActiveMQIllegalStateException:
AMQ229030: large-message not initialized on server
at
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.sendContinuations(ServerSessionPacketHandler.java:1115)
~[artemis-server-2.30.0.jar:2.30.0]
at
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.slowPacketHandler(ServerSessionPacketHandler.java:343)
~[artemis-server-2.30.0.jar:2.30.0]
at
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.onMessagePacket(ServerSessionPacketHandler.java:315)
~[artemis-server-2.30.0.jar:2.30.0]
at org.apache.activemq.artemis.utils.actors.Actor.doTask(Actor.java:32)
~[artemis-commons-2.30.0.jar:?]
at
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
~[artemis-commons-2.30.0.jar:?]
at
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
~[artemis-commons-2.30.0.jar:?]
at
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
~[artemis-commons-2.30.0.jar:?]
at
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
~[artemis-commons-2.30.0.jar:?]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[?:?]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[?:?]
at
org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
[artemis-commons-2.30.0.jar:?]
So message looks like this in web ui:
[
{
"address": "output",
"ShortProperties": null,
"messageID": "7386",
"priority": 4,
"type": 4,
"userID": "",
"redelivered": false,
"ByteProperties": {
"_AMQ_ROUTING_TYPE": 1
},
"LongProperties": {
"_AMQ_LARGE_SIZE": 906695
},
"IntProperties": null,
"durable": true,
"protocol": "CORE",
"persistentSize": 907100,
"StringProperties": {
"application": "TEST",
"__AMQ_CID": "5899450b-b5e2-11ee-83e1-623551f10b95"
},
"DoubleProperties": null,
"expiration": 0,
"PropertiesText": "{application=TEST,
__AMQ_CID=5899450b-b5e2-11ee-83e1-623551f10b95, _AMQ_ROUTING_TYPE=1,
_AMQ_LARGE_SIZE=906695}",
"largeMessage": true,
"BodyPreview": [],
"BooleanProperties": null,
"FloatProperties": null,
"timestamp": 0
}
]
Message size only 906695 bytes is not so big, what can be the reason?
PS. I tried change in broker.xml artemis and amqp acceptor to
amqpMinLargeMessageSize=99999999 also tried to disable large message
setting to
-1(https://activemq.apache.org/components/artemis/documentation/latest/large-messages#configuring-amqp-acceptor)