Details
-
Bug
-
Resolution: Done
-
Critical
-
7.0.0.Final
-
None
-
Workaround Exists
-
Description
After upgrading from AS 7.0.0.CR1 to AS 7.0.0.Final, I started to see an exception raised by org.jboss.as.clustering.jgroups.JChannelFactory:
22:11:54,040 ERROR [stderr] (MSC service thread 1-1) java.lang.IllegalArgumentException: org.jgroups.ChannelException: unable to setup the protocol stack 22:11:54,040 ERROR [stderr] (MSC service thread 1-1) at org.jboss.as.clustering.infinispan.ChannelProvider.getJGroupsChannel(ChannelProvider.java:71) 22:11:54,041 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.remoting.transport.jgroups.JGroupsTransport.buildChannel(JGroupsTransport.java:273) 22:11:54,041 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.remoting.transport.jgroups.JGroupsTransport.initChannel(JGroupsTransport.java:226) 22:11:54,041 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.remoting.transport.jgroups.JGroupsTransport.initChannelAndRPCDispatcher(JGroupsTransport.java:254) 22:11:54,041 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.remoting.transport.jgroups.JGroupsTransport.start(JGroupsTransport.java:148) 22:11:54,041 ERROR [stderr] (MSC service thread 1-1) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 22:11:54,041 ERROR [stderr] (MSC service thread 1-1) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 22:11:54,042 ERROR [stderr] (MSC service thread 1-1) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 22:11:54,042 ERROR [stderr] (MSC service thread 1-1) at java.lang.reflect.Method.invoke(Method.java:597) 22:11:54,042 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172) 22:11:54,042 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:918) 22:11:54,042 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:711) 22:11:54,042 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:611) 22:11:54,043 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.factories.GlobalComponentRegistry.start(GlobalComponentRegistry.java:176) 22:11:54,043 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.factories.ComponentRegistry.start(ComponentRegistry.java:171) 22:11:54,043 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.CacheImpl.start(CacheImpl.java:366) 22:11:54,043 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:559) 22:11:54,043 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:455) 22:11:54,043 ERROR [stderr] (MSC service thread 1-1) at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:479) 22:11:54,044 ERROR [stderr] (MSC service thread 1-1) at org.jboss.as.clustering.infinispan.DefaultEmbeddedCacheManager.getCache(DefaultEmbeddedCacheManager.java:84) 22:11:54,044 ERROR [stderr] (MSC service thread 1-1) at org.jboss.as.clustering.infinispan.DefaultEmbeddedCacheManager.getCache(DefaultEmbeddedCacheManager.java:73) 22:11:54,044 ERROR [stderr] (MSC service thread 1-1) at org.jboss.as.clustering.infinispan.subsystem.CacheService.start(CacheService.java:73) 22:11:54,044 ERROR [stderr] (MSC service thread 1-1) at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1765) 22:11:54,044 ERROR [stderr] (MSC service thread 1-1) at org.jboss.msc.service.ServiceControllerImpl$ClearTCCLTask.run(ServiceControllerImpl.java:2291) 22:11:54,044 ERROR [stderr] (MSC service thread 1-1) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 22:11:54,045 ERROR [stderr] (MSC service thread 1-1) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 22:11:54,045 ERROR [stderr] (MSC service thread 1-1) at java.lang.Thread.run(Thread.java:680) 22:11:54,045 ERROR [stderr] (MSC service thread 1-1) Caused by: org.jgroups.ChannelException: unable to setup the protocol stack 22:11:54,045 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.JChannel.init(JChannel.java:1728) 22:11:54,045 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.JChannel.<init>(JChannel.java:249) 22:11:54,045 ERROR [stderr] (MSC service thread 1-1) at org.jboss.as.clustering.jgroups.JChannelFactory$JChannel.<init>(JChannelFactory.java:269) 22:11:54,046 ERROR [stderr] (MSC service thread 1-1) at org.jboss.as.clustering.jgroups.JChannelFactory.createChannel(JChannelFactory.java:69) 22:11:54,046 ERROR [stderr] (MSC service thread 1-1) at org.jboss.as.clustering.infinispan.ChannelProvider.getJGroupsChannel(ChannelProvider.java:67) 22:11:54,046 ERROR [stderr] (MSC service thread 1-1) ... 26 more 22:11:54,046 ERROR [stderr] (MSC service thread 1-1) Caused by: java.lang.IllegalArgumentException: the following properties in PING are not recognized: {bind_addr=192.168.0.196} 22:11:54,046 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.stack.Configurator.createLayer(Configurator.java:460) 22:11:54,047 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.stack.Configurator.createProtocols(Configurator.java:393) 22:11:54,047 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.stack.Configurator.setupProtocolStack(Configurator.java:88) 22:11:54,047 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.stack.Configurator.setupProtocolStack(Configurator.java:55) 22:11:54,047 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.stack.ProtocolStack.setup(ProtocolStack.java:534) 22:11:54,047 ERROR [stderr] (MSC service thread 1-1) at org.jgroups.JChannel.init(JChannel.java:1725) 22:11:54,047 ERROR [stderr] (MSC service thread 1-1) ... 30 more
(Actually, the exception was being swallowed by Infinispan, so I had to modify the source code in Infinispan.)
Reverting back only the JGroups subsystem to 7.0.0.CR1 fixes the problem for UDP stack. TCP stack still fails when configuring MPING:
23:40:07,623 ERROR [stderr] (MSC service thread 1-8) Caused by: java.lang.IllegalArgumentException: the following properties in MPING are not recognized: {start_port=0} 23:40:07,623 ERROR [stderr] (MSC service thread 1-8) at org.jgroups.stack.Configurator.createLayer(Configurator.java:460) 23:40:07,623 ERROR [stderr] (MSC service thread 1-8) at org.jgroups.stack.Configurator.createProtocols(Configurator.java:393) 23:40:07,623 ERROR [stderr] (MSC service thread 1-8) at org.jgroups.stack.Configurator.setupProtocolStack(Configurator.java:88) 23:40:07,623 ERROR [stderr] (MSC service thread 1-8) at org.jgroups.stack.Configurator.setupProtocolStack(Configurator.java:55) 23:40:07,623 ERROR [stderr] (MSC service thread 1-8) at org.jgroups.stack.ProtocolStack.setup(ProtocolStack.java:534) 23:40:07,623 ERROR [stderr] (MSC service thread 1-8) at org.jgroups.JChannel.init(JChannel.java:1725) 23:40:07,623 ERROR [stderr] (MSC service thread 1-8) ... 30 more
The offending subsystem configuration is:
<subsystem xmlns="urn:jboss:domain:jgroups:1.0" default-stack="udp"> <stack name="udp"> <transport type="UDP" socket-binding="jgroups-udp" default-executor="jgroups" oob-executor="jgroups-oob" timer-executor="jgroups-timer"/> <protocol type="PING"/> <protocol type="MERGE2"/> <protocol type="FD_SOCK"/> <protocol type="FD"/> <protocol type="VERIFY_SUSPECT"/> <protocol type="BARRIER"/> <protocol type="pbcast.NAKACK"/> <protocol type="UNICAST"/> <protocol type="pbcast.STABLE"/> <protocol type="VIEW_SYNC"/> <protocol type="pbcast.GMS"/> <protocol type="UFC"/> <protocol type="MFC"/> <protocol type="FRAG2"/> <protocol type="pbcast.STREAMING_STATE_TRANSFER"/> <protocol type="pbcast.FLUSH"/> </stack> <stack name="tcp"> <transport type="TCP" socket-binding="jgroups-tcp" default-executor="jgroups" oob-executor="jgroups-oob" timer-executor="jgroups-timer"/> <protocol type="MPING" socket-binding="jgroups-mping"/> <protocol type="MERGE2"/> <protocol type="FD_SOCK"/> <protocol type="FD"/> <protocol type="VERIFY_SUSPECT"/> <protocol type="BARRIER"/> <protocol type="pbcast.NAKACK"/> <protocol type="UNICAST"/> <protocol type="pbcast.STABLE"/> <protocol type="VIEW_SYNC"/> <protocol type="pbcast.GMS"/> <protocol type="UFC"/> <protocol type="MFC"/> <protocol type="FRAG2"/> <protocol type="pbcast.STREAMING_STATE_TRANSFER"/> <protocol type="pbcast.FLUSH"/> </stack> </subsystem>