I am using JMX to monitor my replication status and am finding that my MBeans are disappearing. I turned on debugging for JMX and found that solr seems to be deleting the mbeans.
Is this a bug? Some trace info is below.. here's me reading the mbean successfully: Jan 27, 2011 5:00:02 PM ServerCommunicatorAdmin reqIncoming FINER: Receive a new request. Jan 27, 2011 5:00:02 PM DefaultMBeanServerInterceptor getAttribute FINER: Attribute= indexReplicatedAt, obj= solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:00:02 PM Repository retrieve FINER: name=solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:00:02 PM ServerCommunicatorAdmin reqIncoming FINER: Finish a request. a little while later it removes the mbean from the PM Repository (whatever that is) and then re-adds it: FINER: Send create notification of object solr/myapp-core:id=org.apache.solr.handler.component.SearchHandler,type=atlas Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor sendNotification FINER: JMX.mbean.registered solr/myapp-core:type=atlas,id=org.apache.solr.handler.component.SearchHandler Jan 27, 2011 5:16:14 PM Repository contains FINER: name=solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM Repository retrieve FINER: name=solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM Repository remove FINER: name=solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor unregisterMBean FINER: Send delete notification of object solr/myapp-core:id=org.apache.solr.handler.ReplicationHandler,type=/replication Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor sendNotification FINER: JMX.mbean.unregistered solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor registerMBean FINER: ObjectName = solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM Repository addMBean FINER: name=solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor addObject FINER: Send create notification of object solr/myapp-core:id=org.apache.solr.handler.ReplicationHandler,type=/replication Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor sendNotification FINER: JMX.mbean.registered solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler And after a tons of messages but still in the same second it does: Jan 27, 2011 5:16:14 PM Repository contains FINER: name=solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM Repository retrieve FINER: name=solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM Repository removeFINER: name=solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor unregisterMBean FINER: Send delete notification of object solr/myapp-core:id=org.apache.solr.handler.ReplicationHandler,type=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor sendNotification FINER: JMX.mbean.unregistered solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor registerMBean FINER: ObjectName = solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandlerJan 27, 2011 5:16:14 PM Repository addMBean FINER: name=solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor addObjectFINER: Send create notification of object solr/myapp-core:id=org.apache.solr.handler.ReplicationHandler,type=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:14 PM DefaultMBeanServerInterceptor sendNotificationFINER: JMX.mbean.registered solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler And then I don't know what this is about but it removes the bean again: Jan 27, 2011 5:16:15 PM Repository contains FINER: name=solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:15 PM Repository retrieve FINER: name=solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:15 PM Repository remove FINER: name=solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:16:15 PM DefaultMBeanServerInterceptor unregisterMBean FINER: Send delete notification of object solr/myapp-core:id=org.apache.solr.handler.ReplicationHandler,type=org.apache.solr.hand ler.ReplicationHandler Jan 27, 2011 5:16:15 PM DefaultMBeanServerInterceptor sendNotification FINER: JMX.mbean.unregistered solr/myapp-core:type=org.apache.solr.handler.ReplicationHandler,id=org.apache.solr.handler.Replicat ionHandler But eventually I come in to read and find nothing: Jan 27, 2011 5:20:01 PM ServerCommunicatorAdmin reqIncoming FINER: Receive a new request. Jan 27, 2011 5:20:01 PM DefaultMBeanServerInterceptor getAttribute FINER: Attribute= indexReplicatedAt, obj= solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:20:01 PM Repository retrieve FINER: name=solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler Jan 27, 2011 5:20:01 PM DefaultMBeanServerInterceptor getMBean FINER: solr/myapp-core:type=/replication,id=org.apache.solr.handler.ReplicationHandler: Found no object Thanks, Matt