[jboss-jira] [JBoss JIRA] Closed: (JBAS-4202) NPE if additional_data is not set

Brian Stansberry (JIRA) jira-events at lists.jboss.org
Tue Mar 13 16:11:47 EDT 2007


     [ http://jira.jboss.com/jira/browse/JBAS-4202?page=all ]

Brian Stansberry closed JBAS-4202.
----------------------------------

    Fix Version/s: JBossAS-3.2.8.SP2
                       (was: JBossAS-5.0.0.Beta2)
       Resolution: Done

> NPE if additional_data is not set
> ---------------------------------
>
>                 Key: JBAS-4202
>                 URL: http://jira.jboss.com/jira/browse/JBAS-4202
>             Project: JBoss Application Server
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Clustering
>    Affects Versions: JBossAS-4.0.3 SP1, JBossAS-3.2.8 Final, JBossAS-3.2.8.SP1, JBossAS-4.0.5.GA, JBossAS-4.0.4.GA, JBossAS-4.2.0.CR1
>            Reporter: Brian Stansberry
>         Assigned To: Brian Stansberry
>             Fix For: JBossAS-4.2.0.GA, JBossAS-4.0.5.SP1 , JBossAS-3.2.8.SP2
>
>
> If the cluster setup doesn't support the jgroups additional_data feature, the 2nd and later nodes in the cluster will crash with an NPE.
> From the forum post:
> This is the method from the org.jboss.ha.framework.server.HAPartitionImpl which is crashing :
> Code:
> protected void verifyNodeIsUnique (Vector javaGroupIpAddresses) throws Exception
>    {
>       byte[] localUniqueName = this.localJGAddress.getAdditionalData();
>       if (localUniqueName == null)
>          log.warn("No additional information has been found in the JavaGroup address: " +
>                   "make sure you are running with a correct version of JGroups and that the protocol " +
>                   " you are using supports the 'additionalData' behaviour");
>       for (int i = 0; i < javaGroupIpAddresses.size(); i++)
>       {
>          IpAddress address = (IpAddress) javaGroupIpAddresses.elementAt(i);
>          if (!address.equals(this.localJGAddress))
>          {
>             if (localUniqueName.equals(address.getAdditionalData()))
>                throw new Exception ("Local node removed from cluster (" + this.localJGAddress + "): another node (" + address + ") publicizing the same name was already there");
>          }
>       }
>    }	
> The "if (localUniqueName.equals(address.getAdditionalData()))" is the one causing the NPE.
> Method should return after the WARN.
> I believe the TUNNEL protocol does not properly support additional_data, but haven't 100% confirmed this. That's a separate issue, but is the likely usage that will expose this issue.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list