Miroslav Novak created WFWIP-76:
-----------------------------------
Summary: IndexOutOfBoundsException in JDBC HA scenario
Key: WFWIP-76
URL:
https://issues.jboss.org/browse/WFWIP-76
Project: WildFly WIP
Issue Type: Bug
Components: Artemis
Reporter: Miroslav Novak
Assignee: Martyn Taylor
Priority: Blocker
PR:
https://github.com/wildfly/wildfly/pull/11355
*Scenario:*
* There are two Wildfly servers each containing two Artemis brokers
* Artemis brokers creates two live-backup pairs. Each Wildfly instance contains one live
and one backup
* Second server has MDB which resends messages from InQueue to OutQueue
* The second server is stopped and restarted
After the second server is restarted, everything works correctly for a while. Failback
performs successfully, MDB resends messages. However after some time the server starts to
print many errors \[1\]. It looks like some messages where corrupted during
failover/failback and cannot be delivered.
The reproducer always hits the issue. The issue is not relevant to particular database, I
hit it with Oracle12c and DB2 11.1. I also tried to reduce amount of messages and their
size, but I still hit the issue. So it is not related to paging or large messages.
\[1\]
{code}
15:20:50,010 ERROR [org.apache.activemq.artemis.ra] (Thread-7
(ActiveMQ-client-global-threads)) AMQ154004: Failed to deliver message:
java.lang.IndexOutOfBoundsException
at
org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper.readSimpleStringInternal(ChannelBufferWrapper.java:93)
[artemis-commons-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper.readNullableSimpleString(ChannelBufferWrapper.java:73)
[artemis-commons-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.reader.TextMessageUtil.readBodyText(TextMessageUtil.java:37)
[artemis-core-client-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.jms.client.ActiveMQTextMessage.doBeforeReceive(ActiveMQTextMessage.java:112)
[artemis-jms-client-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.ra.inflow.ActiveMQMessageHandler.onMessage(ActiveMQMessageHandler.java:295)
[artemis-ra-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:1001)
[artemis-core-client-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.core.client.impl.ClientConsumerImpl.access$400(ClientConsumerImpl.java:49)
[artemis-core-client-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:1124)
[artemis-core-client-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at
org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$ExecutorTask.run(OrderedExecutorFactory.java:122)
[artemis-commons-1.5.5.jbossorg-012.jar:1.5.5.jbossorg-012]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[rt.jar:1.8.0_171]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[rt.jar:1.8.0_171]
at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_171]
{code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)