Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-3673

NotCompliantMBeanException for QueryEngineSettings, QueryStatManager, RepositoryStatsMBean

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.3.12, 1.4
    • Component/s: core
    • Labels:
      None

      Description

      With OAK-3477 the JMX MBean registration logic would log a warning (earlier it was getting eaten up) if there is some issue in registering the MBean. With that change now running any benchmark in oak-run logs following warning

      14:20:13.674 [main] WARN  org.apache.jackrabbit.oak.Oak - Unexpected exception while registering MBean of type [interface org.apache.jackrabbit.oak.api.jmx.QueryEngineSettingsMBean] against name [org.apache.jackrabbit.oak:name=settings,type=QueryEngineSettings]
      javax.management.NotCompliantMBeanException: MBean class org.apache.jackrabbit.oak.query.QueryEngineSettings does not implement DynamicMBean, and neither follows the Standard MBean conventions (javax.management.NotCompliantMBeanException: Class org.apache.jackrabbit.oak.query.QueryEngineSettings is not a JMX compliant Standard MBean) nor the MXBean conventions (javax.management.NotCompliantMBeanException: org.apache.jackrabbit.oak.query.QueryEngineSettings: Class org.apache.jackrabbit.oak.query.QueryEngineSettings is not a JMX compliant MXBean)
              at com.sun.jmx.mbeanserver.Introspector.checkCompliance(Introspector.java:173) ~[na:1.7.0_55]
              at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:317) ~[na:1.7.0_55]
              at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522) ~[na:1.7.0_55]
              at org.apache.jackrabbit.oak.Oak$3.register(Oak.java:281) ~[oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:79) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:68) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.Oak.createNewContentRepository(Oak.java:604) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.Oak.createContentRepository(Oak.java:562) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.jcr.Jcr.createContentRepository(Jcr.java:351) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.jcr.Jcr.createRepository(Jcr.java:359) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.fixture.OakRepositoryFixture.setUpCluster(OakRepositoryFixture.java:104) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.ReadPropertyTest.createRepository(ReadPropertyTest.java:80) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.AbstractTest.run(AbstractTest.java:192) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.ReadPropertyTest.run(ReadPropertyTest.java:46) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.BenchmarkRunner.main(BenchmarkRunner.java:372) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.run.Main.main(Main.java:167) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
      14:20:14.076 [main] WARN  org.apache.jackrabbit.oak.Oak - Unexpected exception while registering MBean of type [interface org.apache.jackrabbit.api.jmx.QueryStatManagerMBean] against name [org.apache.jackrabbit.oak:name=Oak Query Statistics,type=QueryStat]
      javax.management.NotCompliantMBeanException: MBean class org.apache.jackrabbit.stats.jmx.QueryStatManager does not implement DynamicMBean, and neither follows the Standard MBean conventions (javax.management.NotCompliantMBeanException: Class org.apache.jackrabbit.stats.jmx.QueryStatManager is not a JMX compliant Standard MBean) nor the MXBean conventions (javax.management.NotCompliantMBeanException: org.apache.jackrabbit.stats.jmx.QueryStatManager: Class org.apache.jackrabbit.stats.jmx.QueryStatManager is not a JMX compliant MXBean)
              at com.sun.jmx.mbeanserver.Introspector.checkCompliance(Introspector.java:173) ~[na:1.7.0_55]
              at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:317) ~[na:1.7.0_55]
              at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522) ~[na:1.7.0_55]
              at org.apache.jackrabbit.oak.Oak$3.register(Oak.java:281) ~[oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:79) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:68) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.stats.StatisticManager.<init>(StatisticManager.java:58) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.jcr.repository.RepositoryImpl.<init>(RepositoryImpl.java:150) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.jcr.Jcr.createRepository(Jcr.java:359) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.fixture.OakRepositoryFixture.setUpCluster(OakRepositoryFixture.java:104) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.ReadPropertyTest.createRepository(ReadPropertyTest.java:80) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.AbstractTest.run(AbstractTest.java:192) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.ReadPropertyTest.run(ReadPropertyTest.java:46) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.BenchmarkRunner.main(BenchmarkRunner.java:372) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.run.Main.main(Main.java:167) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
      14:20:14.077 [main] WARN  org.apache.jackrabbit.oak.Oak - Unexpected exception while registering MBean of type [interface org.apache.jackrabbit.oak.api.jmx.RepositoryStatsMBean] against name [org.apache.jackrabbit.oak:name=Oak Repository Statistics,type=RepositoryStats]
      javax.management.NotCompliantMBeanException: MBean class org.apache.jackrabbit.oak.stats.RepositoryStats does not implement DynamicMBean, and neither follows the Standard MBean conventions (javax.management.NotCompliantMBeanException: Class org.apache.jackrabbit.oak.stats.RepositoryStats is not a JMX compliant Standard MBean) nor the MXBean conventions (javax.management.NotCompliantMBeanException: org.apache.jackrabbit.oak.stats.RepositoryStats: Class org.apache.jackrabbit.oak.stats.RepositoryStats is not a JMX compliant MXBean)
              at com.sun.jmx.mbeanserver.Introspector.checkCompliance(Introspector.java:173) ~[na:1.7.0_55]
              at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:317) ~[na:1.7.0_55]
              at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522) ~[na:1.7.0_55]
              at org.apache.jackrabbit.oak.Oak$3.register(Oak.java:281) ~[oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:79) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.registerMBean(WhiteboardUtils.java:68) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.stats.StatisticManager.<init>(StatisticManager.java:58) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.jcr.repository.RepositoryImpl.<init>(RepositoryImpl.java:150) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.jcr.Jcr.createRepository(Jcr.java:359) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.fixture.OakRepositoryFixture.setUpCluster(OakRepositoryFixture.java:104) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.ReadPropertyTest.createRepository(ReadPropertyTest.java:80) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.AbstractTest.run(AbstractTest.java:192) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.ReadPropertyTest.run(ReadPropertyTest.java:46) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.benchmark.BenchmarkRunner.main(BenchmarkRunner.java:372) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
              at org.apache.jackrabbit.oak.run.Main.main(Main.java:167) [oak-run-1.4-SNAPSHOT.jar:1.4-SNAPSHOT]
      

        Attachments

        1. OAK-3673.patch
          3 kB
          Chetan Mehrotra

          Activity

            People

            • Assignee:
              chetanm Chetan Mehrotra
              Reporter:
              chetanm Chetan Mehrotra
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: