[
https://issues.apache.org/jira/browse/ARIES-1119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jean-Baptiste Onofré reassigned ARIES-1119:
-------------------------------------------
Assignee: Jean-Baptiste Onofré
> MBean registration race condition in JMXAgentImpl
> -------------------------------------------------
>
> Key: ARIES-1119
> URL: https://issues.apache.org/jira/browse/ARIES-1119
> Project: Aries
> Issue Type: Bug
> Components: JMX
> Affects Versions: jmx-core-1.1.0
> Environment: jmx-core-1.1.1
> Reporter: Tuomas Kiviaho
> Assignee: Jean-Baptiste Onofré
> Priority: Minor
>
> I'm just starting to use Aries JMX Whiteboard but the first thing to struck
> me was an innocent but yet disturbing error message.
> {code}
> [INFO] [org.visit] Registering
> org.osgi.jmx.service.cm.ConfigurationAdminMBean to MBeanServer
> com.sun.jmx.mbeanserver.JmxMBeanServer@82a72a with name
> osgi.compendium:service=cm,version=1.3,framework=org.apache.felix.framework,uuid=c16979bc-e552-4a51-8763-a41d385589c8
> [INFO] [org.visit] Registering org.osgi.jmx.framework.FrameworkMBean to
> MBeanServer com.sun.jmx.mbeanserver.JmxMBeanServer@82a72a with name
> osgi.core:type=framework,version=1.7,framework=org.apache.felix.framework,uuid=c16979bc-e552-4a51-8763-a41d385589c8
> [INFO] [org.visit] Registering
> org.osgi.jmx.service.cm.ConfigurationAdminMBean to MBeanServer
> com.sun.jmx.mbeanserver.JmxMBeanServer@82a72a with name
> osgi.compendium:service=cm,version=1.3,framework=org.apache.felix.framework,uuid=c16979bc-e552-4a51-8763-a41d385589c8
> [WARNING] [org.visit] MBean is already registered
> org.apache.felix.log.LogException:
> javax.management.InstanceAlreadyExistsException:
> osgi.compendium:service=cm,version=1.3,framework=org.apache.felix.framework,uuid=c16979bc-e552-4a51-8763-a41d385589c8
> at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:437)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1898)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
> at
> com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
> at org.apache.aries.jmx.agent.JMXAgentImpl.registerMBean(.:194)
> at org.apache.aries.jmx.agent.JMXAgentContext.registerMBean(.:74)
> at org.apache.aries.jmx.AbstractCompendiumHandler$1.run(.:91)
> {code}
> It seems that JMXAgentImpl is not keeping track on which server it has
> registered which mbean instance so it tries to register already registered
> beans again. With a small effort, the current mbeans handlers tracking table
> could be changed to contain mbean servers instead of a simple flag indicating
> whether mbean has been registered or not.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)