Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
When using a high available setup, an issue occurs when sending a message with a header that is too large. The main broker rejects the message, but at the same time, it seems that it is trying to perform replication to the backup broker.
The backup broker also rejects this replication message, but after this it seems that all further messages are blocked. Only after killing the backup broker, the messages will be processed. Seems like this is related to journal related operations being blocked until backup acknowledges the completion of synchronization (https://activemq.apache.org/components/artemis/documentation/latest/ha.html#replication)
[Thread-2 (org.apache.activemq.artemis.core.remoting.impl.invm.InVMConnector)] 17:41:25,854 WARN [org.apache.activemq.artemis.core.server] AMQ222086: error handling packet ReplicationAddTXMessage[type=92, channelID=2, responseAsync=false, requiresResponse=false, correlationID=-1] for replication org.apache.activemq.artemis.api.core.ActiveMQIOErrorException: AMQ149005: Message of 524513 bytes is bigger than the max record size of 102400 bytes. You should try to move large application properties to the message body. at org.apache.activemq.artemis.core.journal.impl.JournalImpl.checkRecordSize(JournalImpl.java:1011) ~[classes/:?] at org.apache.activemq.artemis.core.journal.impl.JournalImpl.appendAddRecordTransactional(JournalImpl.java:1269) ~[classes/:?] at org.apache.activemq.artemis.core.journal.Journal.appendAddRecordTransactional(Journal.java:188) ~[classes/:?] at org.apache.activemq.artemis.core.journal.impl.JournalBase.appendAddRecordTransactional(JournalBase.java:115) ~[classes/:?] at org.apache.activemq.artemis.core.journal.impl.JournalImpl.appendAddRecordTransactional(JournalImpl.java:105) ~[classes/:?] at org.apache.activemq.artemis.core.replication.ReplicationEndpoint.handleAppendAddTXRecord(ReplicationEndpoint.java:766) ~[classes/:?] at org.apache.activemq.artemis.core.replication.ReplicationEndpoint.handlePacket(ReplicationEndpoint.java:211) ~[classes/:?] at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.handlePacket(ChannelImpl.java:852) ~[classes/:?] at org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl.doBufferReceived(RemotingConnectionImpl.java:419) ~[classes/:?] at org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:392) ~[classes/:?] at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl$DelegatingBufferHandler.bufferReceived(ClientSessionFactoryImpl.java:1334) ~[classes/:?] at org.apache.activemq.artemis.core.remoting.impl.invm.InVMConnection$1.run(InVMConnection.java:223) ~[classes/:?] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57) ~[classes/:?] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32) ~[classes/:?] at org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68) ~[classes/:?] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?] at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [classes/:?] [Thread-4 (ActiveMQ-server-ActiveMQServerImpl::Server 1)] 17:41:25,887 WARN [org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback] AMQ149005: Message of 524513 bytes is bigger than the max record size of 102400 bytes. You should try to move large application properties to the message body. org.apache.activemq.artemis.api.core.ActiveMQIOErrorException: AMQ149005: Message of 524513 bytes is bigger than the max record size of 102400 bytes. You should try to move large application properties to the message body. at org.apache.activemq.artemis.core.journal.impl.JournalImpl.checkRecordSize(JournalImpl.java:1011) ~[classes/:?] at org.apache.activemq.artemis.core.journal.impl.JournalImpl.appendAddRecordTransactional(JournalImpl.java:1269) ~[classes/:?] at org.apache.activemq.artemis.core.replication.ReplicatedJournal.appendAddRecordTransactional(ReplicatedJournal.java:192) ~[classes/:?] at org.apache.activemq.artemis.core.persistence.impl.journal.AbstractJournalStorageManager.storeMessageTransactional(AbstractJournalStorageManager.java:571) ~[classes/:?] at org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.storeDurableReference(PostOfficeImpl.java:1790) ~[classes/:?] at org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.processRouteToDurableQueues(PostOfficeImpl.java:1770) ~[classes/:?] at org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.processRoute(PostOfficeImpl.java:1706) ~[classes/:?] at org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.route(PostOfficeImpl.java:1244) ~[classes/:?] at org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.route(PostOfficeImpl.java:1135) ~[classes/:?] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.doSend(ServerSessionImpl.java:2368) ~[classes/:?] at org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.send(ServerSessionImpl.java:1963) ~[classes/:?] at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.inSessionSend(AMQPSessionCallback.java:624) ~[classes/:?] at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.lambda$serverSend$2(AMQPSessionCallback.java:580) ~[classes/:?] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57) ~[classes/:?] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32) ~[classes/:?] at org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68) ~[classes/:?] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?] at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [classes/:?]
Attachments
Issue Links
- is duplicated by
-
ARTEMIS-5220 Messages are blocked after sending too large header
-
- Closed
-
- links to