[ https://issues.apache.org/jira/browse/CASSANDRA-19902?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18005256#comment-18005256 ]
Paulo Motta commented on CASSANDRA-19902: ----------------------------------------- Pushed rebased 5.0 PR that initializes StorageService JMX bean just before bootstrap on {{StorageService::init}} and add a regression test: [https://github.com/apache/cassandra/pull/3717] - this essentially gets us back to 4.1 state where JMX is available again during bootstrap, but doesn't ensure all commands will work since this is a more involved refactoring effort. - 5.0 CI: [https://ci-cassandra.apache.org/view/patches/job/Cassandra-devbranch-5/324/] For trunk the regression test is failing differently, JMX is available during bootstrap but the returned node state is {{STARTING}} instead of {{JOINING}} which is a behavior change, not sure if's expected: [https://github.com/apache/cassandra/pull/3716] - trunk CI: [https://ci-cassandra.apache.org/view/patches/job/Cassandra-devbranch-5/325/] I don't have time to address trunk now and would like to unblock the 5.0 patch so I will mark the trunk regression test as ignored and create a new ticket to address separately. Trunk regression test is failing with {noformat} [junit-timeout] Testcase: testStorageServiceMBeanIsPublishedOnJMXDuringBootstrap(org.apache.cassandra.distributed.test.ring.BootstrapTest)-_jdk11: Caused an ERROR [junit-timeout] java.lang.AssertionError: Should not fail to connect via JMX before bootstrap is completed. [junit-timeout] java.util.concurrent.ExecutionException: java.lang.AssertionError: Should not fail to connect via JMX before bootstrap is completed. [junit-timeout] at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) [junit-timeout] at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) [junit-timeout] at org.apache.cassandra.distributed.test.ring.BootstrapTest.testStorageServiceMBeanIsPublishedOnJMXDuringBootstrap(BootstrapTest.java:348) [junit-timeout] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [junit-timeout] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [junit-timeout] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [junit-timeout] Caused by: java.lang.AssertionError: Should not fail to connect via JMX before bootstrap is completed. [junit-timeout] at org.apache.cassandra.distributed.test.ring.BootstrapTest.lambda$testStorageServiceMBeanIsPublishedOnJMXDuringBootstrap$10(BootstrapTest.java:331) [junit-timeout] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [junit-timeout] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) [junit-timeout] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [junit-timeout] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [junit-timeout] at java.base/java.lang.Thread.run(Thread.java:829) [junit-timeout] at org.apache.cassandra.distributed.test.ring.BootstrapTest.lambda$testStorageServiceMBeanIsPublishedOnJMXDuringBootstrap$10(BootstrapTest.java:327) {noformat} > StorageService JMX mbean is not available during bootstrap > ---------------------------------------------------------- > > Key: CASSANDRA-19902 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19902 > Project: Apache Cassandra > Issue Type: Bug > Components: Tool/nodetool > Reporter: Paulo Motta > Assignee: Paulo Motta > Priority: Normal > Fix For: 5.0.x, 5.x > > Time Spent: 1h 20m > Remaining Estimate: 0h > > Looks like the seemingly harmless cosmetic patch from CASSANDRA-11537 causes > the StorageServiceMBean to not be available during bootstrap. This causes > commands like "nodetool nestats/status/etc" to not be available on the > boostrapping node with the following error: > {code:none} > - StackTrace -- > javax.management.InstanceNotFoundException: > org.apache.cassandra.db:type=StorageService > at > java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(DefaultMBeanServerInterceptor.java:1083) > at > java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(DefaultMBeanServerInterceptor.java:637) > {code} > This ticket is just to revert CASSANDRA-11537, we can re-add the improvement > of that ticket later. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org