[jboss-jira] [JBoss JIRA] Updated: (JBAS-3194) Proxies for HAServiceMBeanSupport subclass unbound across cluster when any instance undeployed

Brian Stansberry (JIRA) jira-events at jboss.com
Thu Aug 24 17:06:50 EDT 2006


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

Brian Stansberry updated JBAS-3194:
-----------------------------------

    Comment: was deleted

> Proxies for HAServiceMBeanSupport subclass unbound across cluster when any instance undeployed
> ----------------------------------------------------------------------------------------------
>
>                 Key: JBAS-3194
>                 URL: http://jira.jboss.com/jira/browse/JBAS-3194
>             Project: JBoss Application Server
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Clustering
>    Affects Versions: JBossAS-4.0.4.CR2, JBossAS-4.0.3 SP1, JBossAS-4.0.3 Final
>            Reporter: Brian Stansberry
>         Assigned To: Brian Stansberry
>             Fix For: JBossAS-4.0.5.CR1
>
>
> ProxyFactoryHA registers a JMX notification listener for the shutdown of its target service and removes the proxy from JNDI on receipt of the notification.  HAServiceMBeanSupport broadcasts its JMX notifications *across the cluster*.  The effect of this is that the ProxyFactoryHA on all cluster nodes will receive the notification when any one instance of the service undeploys.  The effect is all proxies across the cluster are removed from JNDI.
> Test org.jboss.test.cluster.jmx.test.HAInvokerUnitTestCase demonstrates this.
> Following is a deliberately created stacktrace showing the origin of a notification that caused an invalid removal from JNDI:
> 2006-05-08 01:51:53,703 DEBUG [org.jboss.proxy.generic.ProxyFactoryHA] About to stop: disabling remote access to mbean jboss.test:service=HAService
> 2006-05-08 01:51:53,703 DEBUG [org.jboss.proxy.generic.ProxyFactoryHA] java.lang.Exception: stacktrace
> java.lang.Exception: stacktrace
> 	at org.jboss.proxy.generic.ProxyFactoryHA.containerIsAboutToStop(ProxyFactoryHA.java:169)
> 	at org.jboss.proxy.generic.ProxyFactoryHA$StateChangeListener.handleNotification(ProxyFactoryHA.java:231)
> 	at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.jboss.mx.notification.NotificationListenerProxy.invoke(NotificationListenerProxy.java:153)
> 	at $Proxy10.handleNotification(Unknown Source)
> 	at org.jboss.mx.util.JBossNotificationBroadcasterSupport.handleNotification(JBossNotificationBroadcasterSupport.java:127)
> 	at org.jboss.mx.util.JBossNotificationBroadcasterSupport.sendNotification(JBossNotificationBroadcasterSupport.java:110)
> 	at org.jboss.ha.jmx.HAServiceMBeanSupport._receiveRemoteNotification(HAServiceMBeanSupport.java:393)
> 	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:585)
> 	at org.jgroups.blocks.MethodCall.invoke(MethodCall.java:330)
> 	at org.jboss.ha.framework.server.HAPartitionImpl.handle(HAPartitionImpl.java:1017)
> 	at org.jgroups.blocks.RequestCorrelator.handleRequest(RequestCorrelator.java:597)
> 	at org.jgroups.blocks.RequestCorrelator.receiveMessage(RequestCorrelator.java:497)
> 	at org.jgroups.blocks.RequestCorrelator.receive(RequestCorrelator.java:320)
> 	at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:725)
> 	at org.jgroups.JChannel.up(JChannel.java:1041)
> 	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:377)
> 	at org.jgroups.stack.ProtocolStack.receiveUpEvent(ProtocolStack.java:393)
> 	at org.jgroups.stack.Protocol.passUp(Protocol.java:538)
> 	at org.jgroups.protocols.pbcast.STATE_TRANSFER.up(STATE_TRANSFER.java:141)
> 	at org.jgroups.stack.UpHandler.run(Protocol.java:60)

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