]
Miroslav Novak commented on WFLY-5456:
--------------------------------------
I did not see to fail failback with netty-connector So it's just http-connector.
I've attached configuration from both of the servers.
"RemoteConnectionFactory" is using "http-connector" which is set also
used for cluster connection. "RemoteConnectionFactory" is used by standalone JMS
clients.
Failback of standalone JMS client fails with http connector
-----------------------------------------------------------
Key: WFLY-5456
URL:
https://issues.jboss.org/browse/WFLY-5456
Project: WildFly
Issue Type: Bug
Components: JMS
Affects Versions: 10.0.0.CR2
Reporter: Miroslav Novak
Assignee: Clebert Suconic
Priority: Critical
Attachments: log.txt, servers.zip, standalone-full-ha-1.xml,
standalone-full-ha-2.xml
Failback of standalone JMS client fails if http connector is used. There are 2 EAP
7.0.0.DR11 (Artemis 1.1.0) servers configured in dedicated topology with shared store.
If live server is killed (clients failover) and then restarted (so failback occurs) then
sometimes client does not failback to live server.
From the thread dump of one client it seems that it's stuck on:
{code}
Stack trace of thread: Thread[Thread-16,5,main]
Stack trace of thread: Thread[Thread-2
(ActiveMQ-client-global-threads-1995983824),5,ActiveMQ-client-global-threads-1995983824]
---sun.misc.Unsafe.park(Native Method)
---java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
---java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedNanos(AbstractQueuedSynchronizer.java:1037)
---java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1328)
---java.util.concurrent.CountDownLatch.await(CountDownLatch.java:277)
---org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQClientProtocolManager.waitOnLatch(ActiveMQClientProtocolManager.java:130)
---org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.getConnectionWithRetry(ClientSessionFactoryImpl.java:770)
---org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.reconnectSessions(ClientSessionFactoryImpl.java:694)
---org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.failoverOrReconnect(ClientSessionFactoryImpl.java:558)
---org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.handleConnectionFailure(ClientSessionFactoryImpl.java:461)
---org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.access$400(ClientSessionFactoryImpl.java:68)
---org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl$DelegatingFailureListener.connectionFailed(ClientSessionFactoryImpl.java:1120)
---org.apache.activemq.artemis.spi.core.protocol.AbstractRemotingConnection.callFailureListeners(AbstractRemotingConnection.java:57)
---org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl.fail(RemotingConnectionImpl.java:204)
---org.apache.activemq.artemis.spi.core.protocol.AbstractRemotingConnection.fail(AbstractRemotingConnection.java:179)
---org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl$CloseRunnable.run(ClientSessionFactoryImpl.java:946)
---org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:94)
---java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
---java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
---java.lang.Thread.run(Thread.java:745)
{code}
See attached log.txt for more details.