[jboss-jira] [JBoss JIRA] Created: (AS7-1513) PING incorrectly populated with bind_addr property

Galder Zamarreño (JIRA) jira-events at lists.jboss.org
Thu Aug 11 06:49:28 EDT 2011


PING incorrectly populated with bind_addr property
--------------------------------------------------

                 Key: AS7-1513
                 URL: https://issues.jboss.org/browse/AS7-1513
             Project: Application Server 7
          Issue Type: Bug
          Components: Clustering
    Affects Versions: 7.0.0.Final
            Reporter: Galder Zamarreño
            Assignee: Paul Ferraro
             Fix For: 7.0.1.Final


Starting pristine EDG trunk throws:

{code}Caused by: java.lang.IllegalArgumentException: the following properties in PING are not recognized: {bind_addr=127.0.0.1}
	at org.jgroups.stack.Configurator.createLayer(Configurator.java:460)
	at org.jgroups.stack.Configurator.createProtocols(Configurator.java:393)
	at org.jgroups.stack.Configurator.setupProtocolStack(Configurator.java:88)
	at org.jgroups.stack.Configurator.setupProtocolStack(Configurator.java:55)
	at org.jgroups.stack.ProtocolStack.setup(ProtocolStack.java:534)
	at org.jgroups.JChannel.init(JChannel.java:1725)
	... 30 more{code}

Full stacktrace in https://gist.github.com/1139341

The problem is with the following piece of code in JChannelFactory:

{code}
        for (ProtocolConfiguration protocol: this.configuration.getProtocols()) {
            config = this.createProtocol(protocol);
            binding = protocol.getSocketBinding();
            if (binding != null) {
                this.configureBindAddress(protocol, config, binding);
                this.configureServerSocket(protocol, config, "bind_port", binding);
                this.configureServerSocket(protocol, config, "start_port", binding);
                this.configureMulticastSocket(protocol, config, "mcast_addr", "mcast_port", binding);
            } else if (transport.getSocketBinding() != null) {
                // If no socket-binding was specified, use bind address of transport
                this.configureBindAddress(protocol, config, transport.getSocketBinding());
            }

            configs.add(config);
        }
{code}

In particular, is the "transport.getSocketBinding() != null". Our transport has a socket binding associated to it and so this returns true when inspecting PING protocol. As a result, bind_addr is added to PING which is not right. Not 100% sure what the fix exactly should look like, but you shouldn't set a property on a protocol that does not have it.

Not sure either what's triggering this because Michal is doing QE testing without any problems.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

       



More information about the jboss-jira mailing list