TransportException when Hot Rod connector is bound to a XSITE cache-container
vbchin2 Mar 6, 2014 9:01 AMISSUE SCENARIO:
- If hotrod-connector is bound to a cache-container meant for cross datacenter replication I get TransportExceptions on the (hot rod) client side when one of the nodes go down
- If hotrod-connector is left bound to clustered cache-container, the detection of a failed node is gracefully handled (transport invalidated) but no cache operations can be performed and the desired cache (labCache) is said to be not found
05:29:26,559 WARN [org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory] (Thread-82) ISPN004022: Unable to invalidate transport for server: /127.0.0.1:11922 05:29:26,563 ERROR [org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory] (Thread-80) ISPN004017: Could not fetch transport: org.infinispan.client.hotrod.exceptions.TransportException:: Could not connect to server: /127.0.0.1:11922 at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.<init>(TcpTransport.java:74) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2] at org.infinispan.client.hotrod.impl.transport.tcp.TransportObjectFactory.makeObject(TransportObjectFactory.java:35) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2] at org.infinispan.client.hotrod.impl.transport.tcp.TransportObjectFactory.makeObject(TransportObjectFactory.java:16) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2] at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:1220) [commons-pool-1.6-redhat-4.jar:1.6-redhat-4] at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory.borrowTransportFromPool(TcpTransportFactory.java:287) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2] at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory.getTransport(TcpTransportFactory.java:165) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2] at org.infinispan.client.hotrod.impl.operations.StatsOperation.getTransport(StatsOperation.java:30) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2] at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:45) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2] at org.infinispan.client.hotrod.impl.RemoteCacheImpl.stats(RemoteCacheImpl.java:194) [infinispan-client-hotrod-6.0.1.Final-redhat-2.jar:6.0.1.Final-redhat-2]
CONFIG for ISSUE SCENARIO #1
<subsystem xmlns="urn:infinispan:server:endpoint:6.0"> <hotrod-connector socket-binding="hotrod" cache-container="xsite"> <topology-state-transfer lazy-retrieval="false" lock-timeout="1000" replication-timeout="5000"/> </hotrod-connector> ... </subsystem> <subsystem xmlns="urn:infinispan:server:core:6.0" default-cache-container="clustered"> .... <cache-container name="xsite" default-cache="default" statistics="true"> <transport executor="infinispan-transport" lock-timeout="60000" cluster="site-1" stack="relay"/> <distributed-cache name="labCache" mode="SYNC" owners="2" remote-timeout="30000" start="EAGER"> <locking isolation="READ_COMMITTED" acquire-timeout="30000" concurrency-level="1000" striping="false"/> <transaction mode="NONE"/> <backups> <backup site="site-2" failure-policy="WARN" enabled="true" strategy="SYNC" timeout="10000"/> </backups> </distributed-cache> </cache-container> ... </subsystem>
CONFIG for ISSUE SCENARIO #2: Same as above but with the following change
<hotrod-connector socket-binding="hotrod" cache-container="clustered">
Please let me know if there is a quick fix for this or whether I need to provide detailed TRACE logs on org.infinispan and possibly org.jgroups