[jboss-jira] [JBoss JIRA] Resolved: (JBAS-5068) Possible NullPointerException in DistributedReplicantManager#_add()

Brian Stansberry (JIRA) jira-events at lists.jboss.org
Sat Jan 19 21:42:21 EST 2008


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

Brian Stansberry resolved JBAS-5068.
------------------------------------

    Resolution: Done

Fixed by instantiating the handler in the DRM constructor.

> Possible NullPointerException in DistributedReplicantManager#_add()
> -------------------------------------------------------------------
>
>                 Key: JBAS-5068
>                 URL: http://jira.jboss.com/jira/browse/JBAS-5068
>             Project: JBoss Application Server
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Clustering
>    Affects Versions: JBossAS-4.2.1.GA, JBossAS-4.2.0.GA, JBossAS-4.2.2.GA
>            Reporter: Takayoshi Kimura
>         Assigned To: Brian Stansberry
>            Priority: Minor
>             Fix For: JBossAS-5.0.0.Beta4, JBossAS-4.2.3.GA
>
>
> DistributedReplicantManager#_add() can be called before
> asynchHandler initialization when multiple nodes starts
> simultaneously. It results NullPointerException below:
> 2007-11-09 20:40:17,315 ERROR [org.jboss.ha.framework.server.DistributedReplicantManagerImpl.DefaultPartition] _add failed
> java.lang.NullPointerException
> 	at org.jboss.ha.framework.server.DistributedReplicantManagerImpl._add(DistributedReplicantManagerImpl.java:622)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> 	at java.lang.reflect.Method.invoke(Unknown Source)
> 	at org.jgroups.blocks.MethodCall.invoke(MethodCall.java:330)
> 	at org.jboss.ha.framework.server.HAPartitionImpl.handle(HAPartitionImpl.java:1126)
> 	at org.jgroups.blocks.RequestCorrelator.handleRequest(RequestCorrelator.java:654)
> 	at org.jgroups.blocks.RequestCorrelator.receiveMessage(RequestCorrelator.java:544)
> 	at org.jgroups.blocks.RequestCorrelator.receive(RequestCorrelator.java:367)
> 	at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:777)
> 	at org.jgroups.JChannel.up(JChannel.java:1091)
> Impact:
> Nothing so far, just appearing the ERROR log above.
> To reproduce this:
> It's very hard to reproduce, the following hack needed.
> Insert Thread.sleep() call before asynchHandler initialization in
> DistributedReplicantManager#start() and boot multiple nodes
> simultaneously.
> DistributedReplicantManager#start():
>       // Create the asynch listener handler thread
>       Thread.sleep(10000);
>       asynchHandler = new AsynchEventHandler(this, "AsynchKeyChangeHandler");
>       asynchHandler.start();

-- 
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