[jboss-user] [JBoss Cache: Core Edition] - weird problem SocketException

jreeman do-not-reply at jboss.com
Fri Jan 9 15:24:43 EST 2009


Hello,

I use jboss cache in a clustered environement, here is my config file :

<?xml version="1.0" encoding="UTF-8"?>
  | <!-- This cluster cache contains the "last" id of archives for the different mgmt data
  |      When a data is modified, the new id of the data is updated on all controllers
  |      and will be compared to the data in the local cache on controllers and based on 
  |      expiration policy (see for example : tech.data.expiration.time.insecond in 
  |      controller-env.properties)
  | -->
  | <server>
  |    <mbean code="org.jboss.cache.jmx.CacheJmxWrapper"
  |           name="jboss.cache:service=TreeCache">
  | 
  |       <depends>jboss:service=Naming</depends>
  |       <attribute name="IsolationLevel">READ_COMMITTED</attribute>
  |       <attribute name="CacheMode">REPL_SYNC</attribute>
  | 
  |     	<!-- Policy configurations : FIFO Policy -->
  | 	   <attribute name="EvictionPolicyConfig">
  | 	      <config>
  | 	         <attribute name="policyClass">org.jboss.cache.eviction.FIFOPolicy</attribute>
  | 		     
  | 	        <!-- Cache wide default -->
  | 			<region name="/_default_">
  | 				<attribute name="maxNodes">1000</attribute>
  | 			</region>
  | 
  | 			<region name="/clusters" policyClass="org.jboss.cache.eviction.FIFOPolicy">
  | 				<attribute name="maxNodes">50</attribute>
  | 			</region>
  | 			
  | 			<region name="/section-mappings" policyClass="org.jboss.cache.eviction.FIFOPolicy">
  | 				<attribute name="maxNodes">100</attribute>
  | 			</region>
  | 			
  | 			<region name="/mgmt-mappings" policyClass="org.jboss.cache.eviction.FIFOPolicy">
  | 				<attribute name="maxNodes">50</attribute>
  | 			</region>
  | 	
  | 			<region name="/clients" policyClass="org.jboss.cache.eviction.FIFOPolicy">
  | 				<attribute name="maxNodes">100</attribute>
  | 			</region>
  | 	
  | 			<region name="/cfes" policyClass="org.jboss.cache.eviction.FIFOPolicy">
  | 				<attribute name="maxNodes">100</attribute>
  | 			</region>
  | 	
  | 			<region name="/sections" policyClass="org.jboss.cache.eviction.FIFOPolicy">
  | 				<attribute name="maxNodes">200</attribute>
  | 			</region>
  | 			     
  | 	      </config>
  | 	   </attribute>
  | 
  |       <attribute name="ClusterName">Cluster-Of-Controllers</attribute>
  | 
  |       <!-- JGroups protocol stack properties  -->
  |       <attribute name="ClusterConfig">
  |          <config>
  |            <TCP start_port="7800" loopback="false" enable_diagnostics="false" />
  | 
  | 				<!-- choose a mcast_addr that no other machine/processus use -->
  | 				<!-- ip_ttl = 0 for local cluster, ip_ttl=1 for multicast in the current network/sub-network > 1 
  | 				and < 32 same organization or site
  | -->				
  | 	           <MPING timeout="3000" bind_to_all_interfaces="false"
  | 	           	mcast_addr="225.0.0.1" mcast_port="7500" ip_ttl="0"
  | 	           	num_initial_members="2" />
  | 
  | 				<!--  suspecting node failures only when a regular TCP connection to the node fails  -->
  | 				<FD_SOCK />
  | 
  | 				<!-- configuration to have a sequence for each message and detect/treat gap in this sequence
  | -->
  | 				<pbcast.NAKACK gc_lag="50" max_xmit_size="8192" retransmit_timeout="600,1200,2400,4800" />
  | 				
  | 				<!-- the sender resends the message if it hasn't received an ACK after 100 ms the first time
  | -->
  | 				<UNICAST timeout="600,1200,2400"/>
  | 				
  | 				<!-- time before two garbage collection -->
  | 				<pbcast.STABLE desired_avg_gossip="20000" />
  | 				
  | 				<!-- merge partitioned cluster -->
  | 				<MERGE2 max_interval="10000" min_interval="2000"/>
  | 				
  | 				<!-- managing nodes that joins -->
  | 				<pbcast.GMS join_retry_timeout="2000" join_timeout="5000" print_local_addr="false" shun="true" />
  | 
  | 				<!-- transfer the state of the cache to the other node -->
  | 				<pbcast.STATE_TRANSFER />           
  |          </config>
  |       </attribute>
  | 
  | 		<attribute name="FetchStateOnStartup">false</attribute>
  | 		<attribute name="InitialStateRetrievalTimeout">5000</attribute>
  | 		<attribute name="LockAcquisitionTimeout">15000</attribute>
  | 		<attribute name="UseMarshalling">false</attribute>
  | 		<attribute name="CacheLoaderShared">true</attribute>
  | 		<attribute name="CacheLoaderPreload">/</attribute>
  | 		<attribute name="CacheLoaderPassivation">false</attribute>
  | 		<attribute name="CacheLoaderFetchPersistentState">false</attribute>
  | 		<attribute name="CacheLoaderFetchTransientState">false</attribute>
  | 		<attribute name="CacheLoaderAsynchronous">false</attribute>
  |    </mbean>
  | </server>

I have set the properties : -Djava.net.preferIPv4Stack=true because without I had exceptions.
java.net.SocketException: bad argument for IP_MULTICAST_IF: address not bound to any interface
This exception disappear but now I have this error in my log :


  | org.jboss.cache.CacheException: Unable to invoke method public void org.jboss.cache.RPCManagerImpl.start() on object instance org.jboss.cache.RPCManagerImpl at 77eb97
  | 	at org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:127)
  | 	at org.jboss.cache.factories.ComponentRegistry$PrioritizedMethod.invoke(ComponentRegistry.java:932)
  | 	at org.jboss.cache.factories.ComponentRegistry.internalStart(ComponentRegistry.java:718)
  | 	at org.jboss.cache.factories.ComponentRegistry.start(ComponentRegistry.java:582)
  | 	at org.jboss.cache.invocation.CacheInvocationDelegate.start(CacheInvocationDelegate.java:279)
  | 	at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:95)
  | 	at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:67)
  | 	at 
  | ...
  | org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1172)
  | 	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:992)
  | 	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4058)
  | 	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4371)
  | 	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
  | 	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
  | 	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
  | 	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
  | 	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
  | 	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
  | 	at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:597)
  | 	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
  | 	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
  | Caused by: java.lang.reflect.InvocationTargetException
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:597)
  | 	at org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:123)
  | 	... 26 more
  | Caused by: org.jboss.cache.CacheException: Unable to connect to JGroups channel
  | 	at org.jboss.cache.RPCManagerImpl.start(RPCManagerImpl.java:163)
  | 	... 31 more
  | Caused by: org.jgroups.ChannelException: failed to start protocol stack
  | 	at org.jgroups.JChannel.startStack(JChannel.java:1550)
  | 	at org.jgroups.JChannel.connect(JChannel.java:429)
  | 	at org.jboss.cache.RPCManagerImpl.start(RPCManagerImpl.java:147)
  | 	... 31 more
  | Caused by: java.net.SocketException: Cannot assign requested address
  | 	at java.net.PlainDatagramSocketImpl.socketSetOption(Native Method)
  | 	at java.net.PlainDatagramSocketImpl.setOption(PlainDatagramSocketImpl.java:299)
  | 	at java.net.MulticastSocket.setInterface(MulticastSocket.java:420)
  | 	at org.jgroups.protocols.MPING.start(MPING.java:236)
  | 	at org.jgroups.stack.Configurator.startProtocolStack(Configurator.java:124)
  | 	at org.jgroups.stack.ProtocolStack.startStack(ProtocolStack.java:392)
  | 	at org.jgroups.JChannel.startStack(JChannel.java:1547)

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4200709#4200709

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4200709



More information about the jboss-user mailing list