You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Daniel Persson <ma...@gmail.com> on 2010/01/15 10:26:39 UTC

Errors when registering MBeans

Hi.

I'm running solr in a IBM WAS 7 server. I get alot of errors in the
log and what I could read out from them its a problem when adding
MBeans. I have tried to deploy it without generating MBeans but with
no luck.

Anyone know a good fix for this. The service works fine but alot of
extra junk in the logs makes debuging quite hard.

Best regards

Daniel

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

[1/15/10 10:15:04:881 CET] 0000046e JmxMonitoredM W
org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
searcher

javax.management.InstanceAlreadyExistsException:
solr:cell=WC_default_cell,type=searcher,node=WC_default_node,process=server1,id=org.apache.solr.search.SolrIndexSearcher
	at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
	at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
	at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:203)
	at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
	at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
	at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
	at java.util.concurrent.FutureTask.run(FutureTask.java:149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:735)

[1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
fieldValueCache

javax.management.InstanceAlreadyExistsException:
solr:cell=WC_default_cell,type=fieldValueCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache
	at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
	at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
	at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
	at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
	at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
	at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
	at java.util.concurrent.FutureTask.run(FutureTask.java:149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:735)

[1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
filterCache

javax.management.InstanceAlreadyExistsException:
solr:cell=WC_default_cell,type=filterCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache
	at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
	at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
	at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
	at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
	at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
	at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
	at java.util.concurrent.FutureTask.run(FutureTask.java:149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:735)

[1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
queryResultCache

javax.management.InstanceAlreadyExistsException:
solr:cell=WC_default_cell,type=queryResultCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache
	at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
	at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
	at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
	at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
	at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
	at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
	at java.util.concurrent.FutureTask.run(FutureTask.java:149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:735)

[1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
documentCache

javax.management.InstanceAlreadyExistsException:
solr:cell=WC_default_cell,type=documentCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache
	at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
	at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
	at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
	at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
	at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
	at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
	at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
	at java.util.concurrent.FutureTask.run(FutureTask.java:149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:735)

[1/15/10 10:15:04:897 CET] 0000046e SolrCore      I
org.apache.solr.core.SolrCore registerSearcher [] Registered new
searcher Searcher@27da27da main
[1/15/10 10:15:04:897 CET] 0000046e SolrIndexSear I
org.apache.solr.search.SolrIndexSearcher close Closing
Searcher@7b3f7b3f main
	fieldValueCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
	filterCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
queryResultCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=2,cumulative_hits=1,cumulative_hitratio=0.50,cumulative_inserts=1,cumulative_evictions=0}
documentCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
[1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM I
org.apache.solr.core.JmxMonitoredMap unregister Failed to unregister
mbean: Searcher@7b3f7b3f main because it was not registered

Re: Errors when registering MBeans

Posted by Chris Hostetter <ho...@fucit.org>.
: MBeans. I have tried to deploy it without generating MBeans but with
: no luck.

First off, a quick solution: if you don't care about using JMX to monitor 
Solr, just completley remove the "<jmx />" config option from 
solrconfig.xml.  that should eliminate all attempts by Solr to register 
MBeans at all.

If you do care about JMX or are interested in helping diagnose this 
further...

: org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
: searcher
: 
: javax.management.InstanceAlreadyExistsException: 
: solr:cell=WC_default_cell,type=searcher,node=WC_default_node,process=server1,id=org.apache.solr.search.SolrIndexSearcher

...at first glance, this seems like it *might* be because the "current" 
index searcher is in fact tracked twice by Solr: once using a unique name, 
and once using a generic name ("searcher" i believe) ... however i've 
never seen this cause a problem with any JmxMBeanServers before -- You can 
definitely get problems if you attempt to registered the same bean with 
the same name more then once, but unique names aren't suppose to be a 
problem.

A quick skim of google results for InstanceAlreadyExistsException seems to 
bear this out, and even if there was a disconnect between your (IBM) 
MBeanServer impl and Solr's use of JMX o this point, it still wouldn't 
explain the rest of these errors below.

Could you try using some JMX tools to query your servlet container to see 
what is/isn't registered?

	...

: org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
: fieldValueCache
: 
: javax.management.InstanceAlreadyExistsException:
: solr:cell=WC_default_cell,type=fieldValueCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache

: org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
: filterCache
: 
: javax.management.InstanceAlreadyExistsException:
: solr:cell=WC_default_cell,type=filterCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache

: [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
: org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
: queryResultCache
: 
: javax.management.InstanceAlreadyExistsException:
: solr:cell=WC_default_cell,type=queryResultCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache

: [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
: org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
: documentCache
: 
: javax.management.InstanceAlreadyExistsException:
: solr:cell=WC_default_cell,type=documentCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache




-Hoss


Re: Errors when registering MBeans

Posted by Lance Norskog <go...@gmail.com>.
Does WAS have a custom security model? This might interfere with
registering MBeans.

On Fri, Jan 15, 2010 at 2:39 PM, Daniel Persson <ma...@gmail.com> wrote:
> Hi again Solr users.
>
> I forgot to describe environment and version.
>
> I'm running a 1.4.0 without any changes to the war file directly
> deployed to a IBM WAS 7 in a windows environment.
>
> I have checked the code and the line that breaks is
>
> public SolrInfoMBean put(String key, SolrInfoMBean infoBean) {
>    if (server != null && infoBean != null) {
>      try {
>        ObjectName name = getObjectName(key, infoBean);
>        if (server.isRegistered(name))
>          server.unregisterMBean(name);
>        SolrDynamicMBean mbean = new SolrDynamicMBean(infoBean);
>        server.registerMBean(mbean, name);
>      } catch (Exception e) {
>        LOG.warn( "Failed to register info bean: " + key, e);
>      }
>    }
>
>    return super.put(key, infoBean);
> }
>
> If I don't miss understand the code above the mBean should be
> unregistered just before you reregister it.
>
> My guess would be that the getObjectName get's the wrong ObjectName
> object. Maybe because the corename is strange?
> I haven't set up any core information. But could the server set a name
> while loading the war file?
> Is there anyway that I should change the configuration to set core
> names and maybe solve this problem?
> Could there be an error in the WAS 7 implemenation that creates
> problem for the getObjectName function?
>
> Please tell me if  I'm totally wrong. I'm trying to understand the
> functionallity.
>
> Best regards
>
> Daniel
>
>
> On Fri, Jan 15, 2010 at 10:26, Daniel Persson <ma...@gmail.com> wrote:
>> Hi.
>>
>> I'm running solr in a IBM WAS 7 server. I get alot of errors in the
>> log and what I could read out from them its a problem when adding
>> MBeans. I have tried to deploy it without generating MBeans but with
>> no luck.
>>
>> Anyone know a good fix for this. The service works fine but alot of
>> extra junk in the logs makes debuging quite hard.
>>
>> Best regards
>>
>> Daniel
>>
>> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>
>> [1/15/10 10:15:04:881 CET] 0000046e JmxMonitoredM W
>> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
>> searcher
>>
>> javax.management.InstanceAlreadyExistsException:
>> solr:cell=WC_default_cell,type=searcher,node=WC_default_node,process=server1,id=org.apache.solr.search.SolrIndexSearcher
>>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:203)
>>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>        at java.lang.Thread.run(Thread.java:735)
>>
>> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
>> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
>> fieldValueCache
>>
>> javax.management.InstanceAlreadyExistsException:
>> solr:cell=WC_default_cell,type=fieldValueCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache
>>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>        at java.lang.Thread.run(Thread.java:735)
>>
>> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
>> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
>> filterCache
>>
>> javax.management.InstanceAlreadyExistsException:
>> solr:cell=WC_default_cell,type=filterCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache
>>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>        at java.lang.Thread.run(Thread.java:735)
>>
>> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
>> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
>> queryResultCache
>>
>> javax.management.InstanceAlreadyExistsException:
>> solr:cell=WC_default_cell,type=queryResultCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache
>>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>        at java.lang.Thread.run(Thread.java:735)
>>
>> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
>> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
>> documentCache
>>
>> javax.management.InstanceAlreadyExistsException:
>> solr:cell=WC_default_cell,type=documentCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache
>>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>        at java.lang.Thread.run(Thread.java:735)
>>
>> [1/15/10 10:15:04:897 CET] 0000046e SolrCore      I
>> org.apache.solr.core.SolrCore registerSearcher [] Registered new
>> searcher Searcher@27da27da main
>> [1/15/10 10:15:04:897 CET] 0000046e SolrIndexSear I
>> org.apache.solr.search.SolrIndexSearcher close Closing
>> Searcher@7b3f7b3f main
>>        fieldValueCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
>>        filterCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
>> queryResultCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=2,cumulative_hits=1,cumulative_hitratio=0.50,cumulative_inserts=1,cumulative_evictions=0}
>> documentCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
>> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM I
>> org.apache.solr.core.JmxMonitoredMap unregister Failed to unregister
>> mbean: Searcher@7b3f7b3f main because it was not registered
>>
>
>
>
> --
> Daniel Persson
> mailto.woden@gmail.com
>



-- 
Lance Norskog
goksron@gmail.com

Re: Errors when registering MBeans

Posted by Daniel Persson <ma...@gmail.com>.
Hi again Solr users.

I forgot to describe environment and version.

I'm running a 1.4.0 without any changes to the war file directly
deployed to a IBM WAS 7 in a windows environment.

I have checked the code and the line that breaks is

public SolrInfoMBean put(String key, SolrInfoMBean infoBean) {
    if (server != null && infoBean != null) {
      try {
        ObjectName name = getObjectName(key, infoBean);
        if (server.isRegistered(name))
          server.unregisterMBean(name);
        SolrDynamicMBean mbean = new SolrDynamicMBean(infoBean);
        server.registerMBean(mbean, name);
      } catch (Exception e) {
        LOG.warn( "Failed to register info bean: " + key, e);
      }
    }

    return super.put(key, infoBean);
}

If I don't miss understand the code above the mBean should be
unregistered just before you reregister it.

My guess would be that the getObjectName get's the wrong ObjectName
object. Maybe because the corename is strange?
I haven't set up any core information. But could the server set a name
while loading the war file?
Is there anyway that I should change the configuration to set core
names and maybe solve this problem?
Could there be an error in the WAS 7 implemenation that creates
problem for the getObjectName function?

Please tell me if  I'm totally wrong. I'm trying to understand the
functionallity.

Best regards

Daniel


On Fri, Jan 15, 2010 at 10:26, Daniel Persson <ma...@gmail.com> wrote:
> Hi.
>
> I'm running solr in a IBM WAS 7 server. I get alot of errors in the
> log and what I could read out from them its a problem when adding
> MBeans. I have tried to deploy it without generating MBeans but with
> no luck.
>
> Anyone know a good fix for this. The service works fine but alot of
> extra junk in the logs makes debuging quite hard.
>
> Best regards
>
> Daniel
>
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> [1/15/10 10:15:04:881 CET] 0000046e JmxMonitoredM W
> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
> searcher
>
> javax.management.InstanceAlreadyExistsException:
> solr:cell=WC_default_cell,type=searcher,node=WC_default_node,process=server1,id=org.apache.solr.search.SolrIndexSearcher
>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:203)
>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:735)
>
> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
> fieldValueCache
>
> javax.management.InstanceAlreadyExistsException:
> solr:cell=WC_default_cell,type=fieldValueCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache
>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:735)
>
> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
> filterCache
>
> javax.management.InstanceAlreadyExistsException:
> solr:cell=WC_default_cell,type=filterCache,node=WC_default_node,process=server1,id=org.apache.solr.search.FastLRUCache
>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:735)
>
> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
> queryResultCache
>
> javax.management.InstanceAlreadyExistsException:
> solr:cell=WC_default_cell,type=queryResultCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache
>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:735)
>
> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM W
> org.apache.solr.core.JmxMonitoredMap put Failed to register info bean:
> documentCache
>
> javax.management.InstanceAlreadyExistsException:
> solr:cell=WC_default_cell,type=documentCache,node=WC_default_node,process=server1,id=org.apache.solr.search.LRUCache
>        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:465)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1496)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:975)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:929)
>        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
>        at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:494)
>        at com.ibm.ws.management.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:471)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:137)
>        at org.apache.solr.core.JmxMonitoredMap.put(JmxMonitoredMap.java:47)
>        at org.apache.solr.search.SolrIndexSearcher.register(SolrIndexSearcher.java:207)
>        at org.apache.solr.core.SolrCore.registerSearcher(SolrCore.java:1275)
>        at org.apache.solr.core.SolrCore.access$000(SolrCore.java:73)
>        at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1186)
>        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>        at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:735)
>
> [1/15/10 10:15:04:897 CET] 0000046e SolrCore      I
> org.apache.solr.core.SolrCore registerSearcher [] Registered new
> searcher Searcher@27da27da main
> [1/15/10 10:15:04:897 CET] 0000046e SolrIndexSear I
> org.apache.solr.search.SolrIndexSearcher close Closing
> Searcher@7b3f7b3f main
>        fieldValueCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
>        filterCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
> queryResultCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=2,cumulative_hits=1,cumulative_hitratio=0.50,cumulative_inserts=1,cumulative_evictions=0}
> documentCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0}
> [1/15/10 10:15:04:897 CET] 0000046e JmxMonitoredM I
> org.apache.solr.core.JmxMonitoredMap unregister Failed to unregister
> mbean: Searcher@7b3f7b3f main because it was not registered
>



-- 
Daniel Persson
mailto.woden@gmail.com