[
https://issues.jboss.org/browse/ISPN-1996?page=com.atlassian.jira.plugin....
]
dex chen commented on ISPN-1996:
--------------------------------
Here is the infinispan.xml:
<infinispan xmlns="urn:infinispan:config:5.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:infinispan:config:5.1
http://www.infinispan.org/schemas/infinispan-config-5.1.xsd">
<global>
<transport clusterName="Test" machineId="portal1.xx.net"
nodeName="portal1.xx.net" rackId="rack_test">
<properties>
<property name="configurationFile"
value="/test/etc/jgroups-tcp.xml"/>
</properties>
</transport>
<globalJmxStatistics enabled="true"/>
<!--
Used to register JVM shutdown hooks.
hookBehavior: DEFAULT, REGISTER, DONT_REGISTER
-->
<shutdown hookBehavior="DONT_REGISTER"/>
</global>
<default>
<locking concurrencyLevel="5000"
isolationLevel="READ_COMMITTED" lockAcquisitionTimeout="1500"
useLockStriping="false" writeSkewCheck="false"/>
<!--
Used to register a transaction manager and participate in JTA and XA
transactions.
See:
http://community.jboss.org/wiki/Infinispantransactions
-->
<transaction cacheStopTimeout="30000"
eagerLockSingleNode="false" syncCommitPhase="false"
syncRollbackPhase="false"
transactionManagerLookupClass="org.infinispan.transaction.lookup.JBossStandaloneJTAManagerLookup"
useEagerLocking="false"/>
<!--
Enables deadlock detection. See:
http://community.jboss.org/wiki/Infinispantransactions#deadlock
-->
<deadlockDetection enabled="true" spinDuration="1000"/>
<jmxStatistics enabled="true"/>
</default>
<namedCache name="session">
<clustering mode="replication">
<stateRetrieval alwaysProvideInMemoryState="false"
fetchInMemoryState="true" timeout="240000"/>
<async asyncMarshalling="false" replQueueInterval="5000"
replQueueMaxElements="500" useReplQueue="true"/>
</clustering>
<transaction transactionMode="NON_TRANSACTIONAL"/>
<eviction maxEntries="250000" strategy="LRU"/>
<!-- time units below are millseconds -->
<expiration lifespan="-1" maxIdle="-1"
wakeUpInterval="-1"/>
</namedCache>
<namedCache name="keychain">
<clustering mode="replication">
<stateRetrieval alwaysProvideInMemoryState="false"
fetchInMemoryState="true" timeout="240000"/>
<async asyncMarshalling="false" replQueueInterval="5000"
replQueueMaxElements="500" useReplQueue="true"/>
</clustering>
<transaction transactionMode="TRANSACTIONAL"/>
<loaders passivation="false" preload="true"
shared="false">
<loader
class="org.infinispan.loaders.jdbc.stringbased.JdbcStringBasedCacheStore"
fetchPersistentState="true" purgeOnStartup="false">
<properties>
<property name="stringsTableNamePrefix"
value="ISPN_STRING_TABLE"/>
<property name="idColumnName"
value="ID_COLUMN"/>
<property name="dataColumnName"
value="DATA_COLUMN"/>
<property name="timestampColumnName"
value="TIMESTAMP_COLUMN"/>
<property name="timestampColumnType"
value="BIGINT"/>
<property name="connectionFactoryClass"
value="org.infinispan.loaders.jdbc.connectionfactory.ManagedConnectionFactory"/>
<property name="datasourceJndiLocation"
value="java:comp/env/jdbc/UserProfile"/>
<property name="idColumnType"
value="VARCHAR(255)"/>
<property name="dataColumnType"
value="BINARY"/>
<property name="dropTableOnExit"
value="false"/>
<property name="createTableOnStart"
value="true"/>
</properties>
<async enabled="false"/>
</loader>
</loaders>
</namedCache>
<namedCache name="ispn-cipherkey">
<clustering mode="replication">
<stateRetrieval alwaysProvideInMemoryState="false"
fetchInMemoryState="true" timeout="240000"/>
<async asyncMarshalling="false"
replQueueInterval="5000" replQueueMaxElements="500"
useReplQueue="true"/>
</clustering>
<loaders passivation="false" preload="true"
shared="false">
<loader class="org.infinispan.loaders.file.FileCacheStore"
fetchPersistentState="true"
purgerThreads="3"
purgeSynchronously="true"
ignoreModifications="false"
purgeOnStartup="false">
<properties>
<property name="location"
value="/test/cacheData/cipher"/>
</properties>
<async enabled="true" flushLockTimeout="15000"
threadPoolSize="5"/>
</loader>
</loaders>
<transaction transactionMode="NON_TRANSACTIONAL"/>
<!-- time units below are millseconds -->
<expiration lifespan="-1" maxIdle="-1"
wakeUpInterval="-1"/>
</namedCache>
<namedCache name="ispn-ldapcookie">
<clustering mode="replication">
<stateRetrieval alwaysProvideInMemoryState="false"
fetchInMemoryState="true" timeout="240000"/>
<async asyncMarshalling="false"
replQueueInterval="5000" replQueueMaxElements="500"
useReplQueue="true"/>
</clustering>
<loaders passivation="false" preload="true"
shared="false">
<loader class="org.infinispan.loaders.file.FileCacheStore"
fetchPersistentState="true"
purgerThreads="3"
purgeSynchronously="true"
ignoreModifications="false"
purgeOnStartup="false">
<properties>
<property name="location"
value="/test/cacheData/ldapcookie"/>
</properties>
<async enabled="true" flushLockTimeout="15000"
threadPoolSize="5"/>
</loader>
</loaders>
<transaction transactionMode="NON_TRANSACTIONAL"/>
<!-- time units below are millseconds -->
<expiration lifespan="-1" maxIdle="-1"
wakeUpInterval="-1"/>
</namedCache>
</infinispan>
Here is the jgroup-tcp.xml:
<config xmlns="urn:org:jgroups"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:org:jgroups file:schema/JGroups-2.8.xsd">
<TCP bind_addr="10.200.22.21" bind_port="7900"
discard_incompatible_packets="true" enable_bundling="true"
enable_diagnostics="false" loopback="true"
max_bundle_size="64000" max_bundle_timeout="30"
oob_thread_pool.enabled="true" oob_thread_pool.keep_alive_time="5000"
oob_thread_pool.max_threads="30" oob_thread_pool.min_threads="2"
oob_thread_pool.queue_enabled="false"
oob_thread_pool.queue_max_size="100"
oob_thread_pool.rejection_policy="Discard" port_range="30"
recv_buf_size="20000000" send_buf_size="640000"
sock_conn_timeout="300" thread_pool.enabled="true"
thread_pool.keep_alive_time="5000" thread_pool.max_threads="30"
thread_pool.min_threads="2" thread_pool.queue_enabled="false"
thread_pool.queue_max_size="100"
thread_pool.rejection_policy="Discard" use_send_queues="true"/>
<!-- Ergonomics, new in JGroups 2.11, are disabled by default in TCPPING until
JGRP-1253 is resolved -->
<TCPPING ergonomics="false" initial_hosts="ip1[7900],ip2[7900],
ip3[7900]" num_initial_members="3" port_range="1"
timeout="3000"/>
<!--
<MPING bind_addr="${jgroups.bind_addr:127.0.0.1}"
break_on_coord_rsp="true"
mcast_addr="${jgroups.udp.mcast_addr:228.6.7.8}"
mcast_port="${jgroups.udp.mcast_port:46655}"
ip_ttl="${jgroups.udp.ip_ttl:2}"
num_initial_members="3"/>
-->
<MERGE2 max_interval="30000" min_interval="10000"/>
<FD_SOCK/>
<FD max_tries="3" timeout="3000"/>
<VERIFY_SUSPECT timeout="1500"/>
<pbcast.NAKACK discard_delivered_msgs="false"
retransmit_timeout="300,600,1200,2400,4800"
use_mcast_xmit="false"/>
<UNICAST2 timeout="300,600,1200"/>
<pbcast.STABLE desired_avg_gossip="50000" max_bytes="400000"
stability_delay="1000"/>
<pbcast.GMS join_timeout="7000" print_local_addr="false"
view_bundling="true"/>
<UFC max_credits="2000000" min_threshold="0.10"/>
<MFC max_credits="2000000" min_threshold="0.10"/>
<FRAG2 frag_size="60000"/>
</config>
Failed to prepare view exceptions
---------------------------------
Key: ISPN-1996
URL:
https://issues.jboss.org/browse/ISPN-1996
Project: Infinispan
Issue Type: Bug
Components: Core API
Affects Versions: 5.1.3.FINAL
Environment: ISPN 5.1.3.Final; Java 7; Cent OS
3-node cluster in replication mode using jgroups-tcp config.
Reporter: dex chen
Assignee: Dan Berindei
I saw lot (re-curring) cache view exceptions (below) when I start up a 3 node cluster.
I am running ISPN 5.1.3 final with replication mode, and jgroup-tcp config.
In this case, I start first 2 nodes first, and later try to join the 3rd node.
{code}
=======================================
2012-04-10/12:13:45.714/MDT
[CacheViewInstaller-3,portal1.net-1609] ERROR
org.infinispan.cacheviews.CacheViewsManagerImpl[263] - ISPN000172: Failed to prepare view
CacheView{viewId=832, members=[portal1.net-1609, portal2.net-11982]} for cache
ispn-cipherkey, rolling back to view CacheView{viewId=831, members=[portal1.net-1609]}
java.util.concurrent.ExecutionException: org.infinispan.CacheException:
java.lang.IllegalStateException: Cannot prepare new view CacheView{viewId=832,
members=[portal1.net-1609, portal2.net-11982]} on cache ispn-cipherkey, we have already
committed view CacheView{viewId=844, members=[]}
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:262)
at java.util.concurrent.FutureTask.get(FutureTask.java:119)
at
org.infinispan.cacheviews.CacheViewsManagerImpl.clusterPrepareView(CacheViewsManagerImpl.java:318)
at
org.infinispan.cacheviews.CacheViewsManagerImpl.clusterInstallView(CacheViewsManagerImpl.java:249)
at
org.infinispan.cacheviews.CacheViewsManagerImpl$ViewInstallationTask.call(CacheViewsManagerImpl.java:875)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.infinispan.CacheException: java.lang.IllegalStateException: Cannot prepare
new view CacheView{viewId=832, members=[portal1.net-1609, portal2.net-11982]} on cache
ispn-cipherkey, we have already committed view CacheView{viewId=844, members=[]}
at org.infinispan.util.Util.rewrapAsCacheException(Util.java:524)
at
org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.invokeRemoteCommand(CommandAwareRpcDispatcher.java:172)
at
org.infinispan.remoting.transport.jgroups.JGroupsTransport.invokeRemotely(JGroupsTransport.java:488)
at
org.infinispan.cacheviews.CacheViewsManagerImpl$2.call(CacheViewsManagerImpl.java:302)
at
org.infinispan.cacheviews.CacheViewsManagerImpl$2.call(CacheViewsManagerImpl.java:299)
... 5 more
Caused by: java.lang.IllegalStateException: Cannot prepare new view CacheView{viewId=832,
members=[portal1.net-1609, portal2.net-11982]} on cache ispn-cipherkey, we have already
committed view CacheView{viewId=844, members=[]}
at org.infinispan.cacheviews.CacheViewInfo.prepareView(CacheViewInfo.java:107)
at
org.infinispan.cacheviews.CacheViewsManagerImpl.handlePrepareView(CacheViewsManagerImpl.java:481)
at
org.infinispan.commands.control.CacheViewControlCommand.perform(CacheViewControlCommand.java:125)
at
org.infinispan.remoting.InboundInvocationHandlerImpl.handle(InboundInvocationHandlerImpl.java:95)
at
org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.executeCommand(CommandAwareRpcDispatcher.java:221)
at
org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.handle(CommandAwareRpcDispatcher.java:201)
at
org.jgroups.blocks.RequestCorrelator.handleRequest(RequestCorrelator.java:456)
at
org.jgroups.blocks.RequestCorrelator.receiveMessage(RequestCorrelator.java:363)
at org.jgroups.blocks.RequestCorrelator.receive(RequestCorrelator.java:238)
at
org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:543)
at org.jgroups.JChannel.up(JChannel.java:716)
at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:1026)
at org.jgroups.protocols.FRAG2.up(FRAG2.java:181)
at org.jgroups.protocols.FlowControl.up(FlowControl.java:418)
at org.jgroups.protocols.FlowControl.up(FlowControl.java:400)
at org.jgroups.protocols.pbcast.GMS.up(GMS.java:882)
at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:244)
at org.jgroups.protocols.UNICAST2.handleDataReceived(UNICAST2.java:759)
at org.jgroups.protocols.UNICAST2.up(UNICAST2.java:365)
at org.jgroups.protocols.pbcast.NAKACK.up(NAKACK.java:595)
at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:143)
at org.jgroups.protocols.FD.up(FD.java:273)
at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:282)
at org.jgroups.protocols.MERGE2.up(MERGE2.java:205)
at org.jgroups.protocols.Discovery.up(Discovery.java:359)
at org.jgroups.protocols.TP.passMessageUp(TP.java:1174)
at org.jgroups.protocols.TP$IncomingPacket.handleMyMessage(TP.java:1722)
at org.jgroups.protocols.TP$IncomingPacket.run(TP.java:1704)
... 3 more
2012-04-10/12:13:46.715/MDT
{code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira