[ https://issues.apache.org/jira/browse/CASSANDRA-11537?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17679262#comment-17679262 ]
William Nguyen commented on CASSANDRA-11537: -------------------------------------------- [https://github.com/apache/cassandra/pull/2060|https://github.com/apache/cassandra/pull/2060.] Changed the approach because we didn't have permission forĀ {{StorageService.isInitialized,}} which is why the jmx auth test failed. The new approach finishes registering the mbeans in {{StorageService}} at the end of its initialization. This will cause an {{InstanceNotFoundException}} when the nodetool command is issued and the server isn't ready. I catch and convert this exception to an {{{}IllegalArgumentException{}}}. > Give clear error when certain nodetool commands are issued before server is > ready > --------------------------------------------------------------------------------- > > Key: CASSANDRA-11537 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11537 > Project: Cassandra > Issue Type: Improvement > Components: Legacy/Observability, Local/Startup and Shutdown > Reporter: Edward Capriolo > Assignee: William Nguyen > Priority: Low > Labels: lhf > Time Spent: 20m > Remaining Estimate: 0h > > As an ops person upgrading and servicing Cassandra servers, I require a more > clear message when I issue a nodetool command that the server is not ready > for it so that I am not confused. > Technical description: > If you deploy a new binary, restart, and issue nodetool > scrub/compact/updatess etc you get unfriendly assertion. An exception would > be easier to understand. Also if a user has turned assertions off it is > unclear what might happen. > {noformat} > EC1: Throw exception to make it clear server is still in start up process. > :~# nodetool upgradesstables > error: null > -- StackTrace -- > java.lang.AssertionError > at org.apache.cassandra.db.Keyspace.open(Keyspace.java:97) > at > org.apache.cassandra.service.StorageService.getValidKeyspace(StorageService.java:2573) > at > org.apache.cassandra.service.StorageService.getValidColumnFamilies(StorageService.java:2661) > at > org.apache.cassandra.service.StorageService.upgradeSSTables(StorageService.java:2421) > {noformat} > EC1: > Patch against 2.1 (branch) > https://github.com/apache/cassandra/compare/trunk...edwardcapriolo:exception-on-startup?expand=1 -- 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