[ https://issues.apache.org/jira/browse/CASSANDRA-7788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Yeschenko updated CASSANDRA-7788: ----------------------------------------- Description: Auth#hasExistingUsers() itself can be improved - should do the first SELECT query with CL.ONE first, before trying QUORUM. There is no good reason to limit setup to {code} if (DatabaseDescriptor.getSeeds().contains(FBUtilities.getBroadcastAddress()) || !DatabaseDescriptor.isAutoBootstrap()) {code} If there was one, it's a leftover from 1.1 private implementation era. Finally, the setup write itself should happen at CL.ONE. The logged warning would be a lie in the QUORUM case if at least one node got the write ("skipped default user setup: some nodes were not ready") was: PasswordAuthenticator#hasExistingUsers() check should replicate what Auth#hasExistingUsers() does - check for existence of the default super user first. Auth#hasExistingUsers() itself can also be improved - should do that very same SELECT query with CL.ONE first, before trying QUORUM. There is no good reason to limit setup to {code} if (DatabaseDescriptor.getSeeds().contains(FBUtilities.getBroadcastAddress()) || !DatabaseDescriptor.isAutoBootstrap()) {code} If there was one, it's a leftover from 1.1 private implementation era. Finally, the setup write itself should happen at CL.ONE. The logged warning would be a lie in the QUORUM case if at least one node got the write ("skipped default user setup: some nodes were not ready") > Improve PasswordAuthenticator default super user setup > ------------------------------------------------------ > > Key: CASSANDRA-7788 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7788 > Project: Cassandra > Issue Type: Improvement > Reporter: Aleksey Yeschenko > Assignee: Aleksey Yeschenko > Priority: Minor > Fix For: 1.2.19, 2.0.10, 2.1.1 > > > Auth#hasExistingUsers() itself can be improved - should do the first SELECT > query with CL.ONE first, before trying QUORUM. > There is no good reason to limit setup to > {code} > if > (DatabaseDescriptor.getSeeds().contains(FBUtilities.getBroadcastAddress()) || > !DatabaseDescriptor.isAutoBootstrap()) > {code} > If there was one, it's a leftover from 1.1 private implementation era. > Finally, the setup write itself should happen at CL.ONE. The logged warning > would be a lie in the QUORUM case if at least one node got the write > ("skipped default user setup: some nodes were not ready") -- This message was sent by Atlassian JIRA (v6.2#6252)