[jboss-jira] [JBoss JIRA] (WFLY-10817) Incorrect data check when clearing body of large compressed message after failover

Erich Duda (JIRA) issues at jboss.org
Thu Aug 9 10:31:00 EDT 2018


Erich Duda created WFLY-10817:
---------------------------------

             Summary: Incorrect data check when clearing body of large compressed message after failover
                 Key: WFLY-10817
                 URL: https://issues.jboss.org/browse/WFLY-10817
             Project: WildFly
          Issue Type: Bug
          Components: JMS
            Reporter: Erich Duda
            Assignee: Jeff Mesnil
            Priority: Critical


*Scenario*
* There are two WildFly (Artemis) servers in dedicated shared store HA topology
* Connection factory is configured to compress large messages
* Live server is killed
* Clients do failover to backup

After the clients do failover to backup, I can see following exceptions in the log when a receiver tries to clear body of large message. The test fails because of lost messages.

I can see this issue with Artemis 1.5.5.jbossorg-012.

I am not able to reproduce it locally but I hit it on Jenkins every time.

{code}
javax.jms.JMSException: AMQ119029: Error writing body of message
        at org.apache.activemq.artemis.jms.client.ActiveMQBytesMessage.clearBody(ActiveMQBytesMessage.java:337)
        at org.jboss.qa.hornetq.apps.clients.Client.cleanMessage(Client.java:144)
        at org.jboss.qa.hornetq.apps.clients.Receiver11.receiveMessage(Receiver11.java:153)
        at org.jboss.qa.hornetq.apps.clients.ReceiverTransAck.run(ReceiverTransAck.java:89)
Caused by: java.lang.RuntimeException: AMQ119029: Error writing body of message
        at org.apache.activemq.artemis.core.client.impl.ClientLargeMessageImpl.getBodyBuffer(ClientLargeMessageImpl.java:93)
        at org.apache.activemq.artemis.jms.client.ActiveMQBytesMessage.getBuffer(ActiveMQBytesMessage.java:363)
        at org.apache.activemq.artemis.jms.client.ActiveMQBytesMessage.clearBody(ActiveMQBytesMessage.java:335)
        ... 3 more
Caused by: ActiveMQLargeMessageException[errorType=LARGE_MESSAGE_ERROR_BODY message=AMQ119029: Error writing body of message]
        at org.apache.activemq.artemis.core.client.impl.LargeMessageControllerImpl.sendPacketToOutput(LargeMessageControllerImpl.java:1077)
        at org.apache.activemq.artemis.core.client.impl.LargeMessageControllerImpl.setOutputStream(LargeMessageControllerImpl.java:258)
        at org.apache.activemq.artemis.core.client.impl.CompressedLargeMessageControllerImpl.setOutputStream(CompressedLargeMessageControllerImpl.java:75)
        at org.apache.activemq.artemis.core.client.impl.CompressedLargeMessageControllerImpl.saveBuffer(CompressedLargeMessageControllerImpl.java:80)
        at org.apache.activemq.artemis.core.client.impl.ClientLargeMessageImpl.checkBuffer(ClientLargeMessageImpl.java:159)
        at org.apache.activemq.artemis.core.client.impl.ClientLargeMessageImpl.getBodyBuffer(ClientLargeMessageImpl.java:91)
        ... 5 more
Caused by: java.io.IOException: incorrect data check
        at org.apache.activemq.artemis.utils.InflaterWriter.close(InflaterWriter.java:81)
        at org.apache.activemq.artemis.core.client.impl.LargeMessageControllerImpl.sendPacketToOutput(LargeMessageControllerImpl.java:1074)
        ... 10 more
Caused by: java.util.zip.DataFormatException: incorrect data check
        at java.util.zip.Inflater.inflateBytes(Native Method)
        at java.util.zip.Inflater.inflate(Inflater.java:259)
        at java.util.zip.Inflater.inflate(Inflater.java:280)
        at org.apache.activemq.artemis.utils.InflaterWriter.close(InflaterWriter.java:77)
        ... 11 more
{code}



--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the jboss-jira mailing list