You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sa...@apache.org on 2016/11/11 11:35:45 UTC
[01/10] cassandra git commit: Prepare legacy auth statements if
tables initialised after node startup (follow-up)
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.2 2e21cac34 -> 5e4198ffd
refs/heads/cassandra-3.0 14b52bca3 -> d81a49076
refs/heads/cassandra-3.X 574ca2e2d -> e3f37c443
refs/heads/trunk dba908017 -> 13ebb57eb
Prepare legacy auth statements if tables initialised after node startup (follow-up)
Patch by Alex Petrov; reviewed by Sam Tunnicliffe for CASSANDRA-12813
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5e4198ff
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5e4198ff
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5e4198ff
Branch: refs/heads/cassandra-2.2
Commit: 5e4198ffdad57aebd7c4b3a8cc01a7ce88eac99c
Parents: 2e21cac
Author: Alex Petrov <ol...@gmail.com>
Authored: Thu Nov 10 14:07:38 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:21:39 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5e4198ff/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index dbae1ba..a90b297 100644
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@ -163,9 +163,8 @@ public class CassandraRoleManager implements IRoleManager
// to be added.
if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
scheduleSetupTask(new Callable<Void>()
{
public Void call() throws Exception
@@ -459,6 +458,13 @@ public class CassandraRoleManager implements IRoleManager
}
}
+ private SelectStatement prepareLegacySelectUserStatement()
+ {
+ return (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
+ AuthKeyspace.NAME,
+ LEGACY_USERS_TABLE);
+ }
+
private CQLStatement prepare(String template, String keyspace, String table)
{
try
@@ -500,9 +506,14 @@ public class CassandraRoleManager implements IRoleManager
// If it exists, try the legacy users table in case the cluster
// is in the process of being upgraded and so is running with mixed
// versions of the authn schema.
- return (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
- ? getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE)
- : getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") == null)
+ return getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ else
+ {
+ if (legacySelectUserStatement == null)
+ prepareLegacySelectUserStatement();
+ return getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE);
+ }
}
catch (RequestExecutionException | RequestValidationException e)
{
[02/10] cassandra git commit: Prepare legacy auth statements if
tables initialised after node startup (follow-up)
Posted by sa...@apache.org.
Prepare legacy auth statements if tables initialised after node startup (follow-up)
Patch by Alex Petrov; reviewed by Sam Tunnicliffe for CASSANDRA-12813
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5e4198ff
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5e4198ff
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5e4198ff
Branch: refs/heads/cassandra-3.0
Commit: 5e4198ffdad57aebd7c4b3a8cc01a7ce88eac99c
Parents: 2e21cac
Author: Alex Petrov <ol...@gmail.com>
Authored: Thu Nov 10 14:07:38 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:21:39 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5e4198ff/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index dbae1ba..a90b297 100644
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@ -163,9 +163,8 @@ public class CassandraRoleManager implements IRoleManager
// to be added.
if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
scheduleSetupTask(new Callable<Void>()
{
public Void call() throws Exception
@@ -459,6 +458,13 @@ public class CassandraRoleManager implements IRoleManager
}
}
+ private SelectStatement prepareLegacySelectUserStatement()
+ {
+ return (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
+ AuthKeyspace.NAME,
+ LEGACY_USERS_TABLE);
+ }
+
private CQLStatement prepare(String template, String keyspace, String table)
{
try
@@ -500,9 +506,14 @@ public class CassandraRoleManager implements IRoleManager
// If it exists, try the legacy users table in case the cluster
// is in the process of being upgraded and so is running with mixed
// versions of the authn schema.
- return (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
- ? getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE)
- : getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") == null)
+ return getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ else
+ {
+ if (legacySelectUserStatement == null)
+ prepareLegacySelectUserStatement();
+ return getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE);
+ }
}
catch (RequestExecutionException | RequestValidationException e)
{
[04/10] cassandra git commit: Prepare legacy auth statements if
tables initialised after node startup (follow-up)
Posted by sa...@apache.org.
Prepare legacy auth statements if tables initialised after node startup (follow-up)
Patch by Alex Petrov; reviewed by Sam Tunnicliffe for CASSANDRA-12813
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5e4198ff
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5e4198ff
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5e4198ff
Branch: refs/heads/trunk
Commit: 5e4198ffdad57aebd7c4b3a8cc01a7ce88eac99c
Parents: 2e21cac
Author: Alex Petrov <ol...@gmail.com>
Authored: Thu Nov 10 14:07:38 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:21:39 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5e4198ff/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index dbae1ba..a90b297 100644
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@ -163,9 +163,8 @@ public class CassandraRoleManager implements IRoleManager
// to be added.
if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
scheduleSetupTask(new Callable<Void>()
{
public Void call() throws Exception
@@ -459,6 +458,13 @@ public class CassandraRoleManager implements IRoleManager
}
}
+ private SelectStatement prepareLegacySelectUserStatement()
+ {
+ return (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
+ AuthKeyspace.NAME,
+ LEGACY_USERS_TABLE);
+ }
+
private CQLStatement prepare(String template, String keyspace, String table)
{
try
@@ -500,9 +506,14 @@ public class CassandraRoleManager implements IRoleManager
// If it exists, try the legacy users table in case the cluster
// is in the process of being upgraded and so is running with mixed
// versions of the authn schema.
- return (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
- ? getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE)
- : getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") == null)
+ return getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ else
+ {
+ if (legacySelectUserStatement == null)
+ prepareLegacySelectUserStatement();
+ return getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE);
+ }
}
catch (RequestExecutionException | RequestValidationException e)
{
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.X
Posted by sa...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.X
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e3f37c44
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e3f37c44
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e3f37c44
Branch: refs/heads/cassandra-3.X
Commit: e3f37c44358a101809751aeac09a374713a01844
Parents: 574ca2e d81a490
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Nov 11 11:32:14 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:32:14 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/e3f37c44/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index 6c2a9ca,c3e2626..89f0e24
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@@ -162,11 -161,10 +162,10 @@@ public class CassandraRoleManager imple
// it, so we can continue to use the old tables while the cluster is upgraded.
// Otherwise, we may need to create a default superuser role to enable others
// to be added.
- if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
+ if (Schema.instance.getCFMetaData(SchemaConstants.AUTH_KEYSPACE_NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- SchemaConstants.AUTH_KEYSPACE_NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
scheduleSetupTask(() -> {
convertLegacyData();
return null;
@@@ -452,6 -450,13 +451,13 @@@
}
}
+ private SelectStatement prepareLegacySelectUserStatement()
+ {
+ return (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
++ SchemaConstants.AUTH_KEYSPACE_NAME,
+ LEGACY_USERS_TABLE);
+ }
+
private CQLStatement prepare(String template, String keyspace, String table)
{
try
@@@ -493,9 -498,14 +499,14 @@@
// If it exists, try the legacy users table in case the cluster
// is in the process of being upgraded and so is running with mixed
// versions of the authn schema.
- return (Schema.instance.getCFMetaData(SchemaConstants.AUTH_KEYSPACE_NAME, "users") != null)
- ? getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE)
- : getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
- if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") == null)
++ if (Schema.instance.getCFMetaData(SchemaConstants.AUTH_KEYSPACE_NAME, "users") == null)
+ return getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ else
+ {
+ if (legacySelectUserStatement == null)
+ prepareLegacySelectUserStatement();
+ return getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE);
+ }
}
catch (RequestExecutionException | RequestValidationException e)
{
[06/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sa...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d81a4907
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d81a4907
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d81a4907
Branch: refs/heads/cassandra-3.0
Commit: d81a49076b694301fdc385af69b57f39a86a22d2
Parents: 14b52bc 5e4198f
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Nov 11 11:28:33 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:28:33 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d81a4907/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index 5e3b92d,a90b297..c3e2626
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@@ -163,12 -163,15 +163,11 @@@ public class CassandraRoleManager imple
// to be added.
if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
- scheduleSetupTask(new Callable<Void>()
- {
- public Void call() throws Exception
- {
- convertLegacyData();
- return null;
- }
+ scheduleSetupTask(() -> {
+ convertLegacyData();
+ return null;
});
}
else
[09/10] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.X
Posted by sa...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.X
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e3f37c44
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e3f37c44
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e3f37c44
Branch: refs/heads/trunk
Commit: e3f37c44358a101809751aeac09a374713a01844
Parents: 574ca2e d81a490
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Nov 11 11:32:14 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:32:14 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/e3f37c44/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index 6c2a9ca,c3e2626..89f0e24
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@@ -162,11 -161,10 +162,10 @@@ public class CassandraRoleManager imple
// it, so we can continue to use the old tables while the cluster is upgraded.
// Otherwise, we may need to create a default superuser role to enable others
// to be added.
- if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
+ if (Schema.instance.getCFMetaData(SchemaConstants.AUTH_KEYSPACE_NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- SchemaConstants.AUTH_KEYSPACE_NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
scheduleSetupTask(() -> {
convertLegacyData();
return null;
@@@ -452,6 -450,13 +451,13 @@@
}
}
+ private SelectStatement prepareLegacySelectUserStatement()
+ {
+ return (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
++ SchemaConstants.AUTH_KEYSPACE_NAME,
+ LEGACY_USERS_TABLE);
+ }
+
private CQLStatement prepare(String template, String keyspace, String table)
{
try
@@@ -493,9 -498,14 +499,14 @@@
// If it exists, try the legacy users table in case the cluster
// is in the process of being upgraded and so is running with mixed
// versions of the authn schema.
- return (Schema.instance.getCFMetaData(SchemaConstants.AUTH_KEYSPACE_NAME, "users") != null)
- ? getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE)
- : getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
- if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") == null)
++ if (Schema.instance.getCFMetaData(SchemaConstants.AUTH_KEYSPACE_NAME, "users") == null)
+ return getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ else
+ {
+ if (legacySelectUserStatement == null)
+ prepareLegacySelectUserStatement();
+ return getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE);
+ }
}
catch (RequestExecutionException | RequestValidationException e)
{
[10/10] cassandra git commit: Merge branch 'cassandra-3.X' into trunk
Posted by sa...@apache.org.
Merge branch 'cassandra-3.X' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/13ebb57e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/13ebb57e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/13ebb57e
Branch: refs/heads/trunk
Commit: 13ebb57eb07c0a0f6cab4af3278e0e2ee730f3d2
Parents: dba9080 e3f37c4
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Nov 11 11:32:57 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:32:57 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
[05/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sa...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d81a4907
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d81a4907
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d81a4907
Branch: refs/heads/cassandra-3.X
Commit: d81a49076b694301fdc385af69b57f39a86a22d2
Parents: 14b52bc 5e4198f
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Nov 11 11:28:33 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:28:33 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d81a4907/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index 5e3b92d,a90b297..c3e2626
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@@ -163,12 -163,15 +163,11 @@@ public class CassandraRoleManager imple
// to be added.
if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
- scheduleSetupTask(new Callable<Void>()
- {
- public Void call() throws Exception
- {
- convertLegacyData();
- return null;
- }
+ scheduleSetupTask(() -> {
+ convertLegacyData();
+ return null;
});
}
else
[03/10] cassandra git commit: Prepare legacy auth statements if
tables initialised after node startup (follow-up)
Posted by sa...@apache.org.
Prepare legacy auth statements if tables initialised after node startup (follow-up)
Patch by Alex Petrov; reviewed by Sam Tunnicliffe for CASSANDRA-12813
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5e4198ff
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5e4198ff
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5e4198ff
Branch: refs/heads/cassandra-3.X
Commit: 5e4198ffdad57aebd7c4b3a8cc01a7ce88eac99c
Parents: 2e21cac
Author: Alex Petrov <ol...@gmail.com>
Authored: Thu Nov 10 14:07:38 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:21:39 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5e4198ff/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index dbae1ba..a90b297 100644
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@ -163,9 +163,8 @@ public class CassandraRoleManager implements IRoleManager
// to be added.
if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
scheduleSetupTask(new Callable<Void>()
{
public Void call() throws Exception
@@ -459,6 +458,13 @@ public class CassandraRoleManager implements IRoleManager
}
}
+ private SelectStatement prepareLegacySelectUserStatement()
+ {
+ return (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
+ AuthKeyspace.NAME,
+ LEGACY_USERS_TABLE);
+ }
+
private CQLStatement prepare(String template, String keyspace, String table)
{
try
@@ -500,9 +506,14 @@ public class CassandraRoleManager implements IRoleManager
// If it exists, try the legacy users table in case the cluster
// is in the process of being upgraded and so is running with mixed
// versions of the authn schema.
- return (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
- ? getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE)
- : getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") == null)
+ return getRoleFromTable(name, loadRoleStatement, ROW_TO_ROLE);
+ else
+ {
+ if (legacySelectUserStatement == null)
+ prepareLegacySelectUserStatement();
+ return getRoleFromTable(name, legacySelectUserStatement, LEGACY_ROW_TO_ROLE);
+ }
}
catch (RequestExecutionException | RequestValidationException e)
{
[07/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sa...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d81a4907
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d81a4907
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d81a4907
Branch: refs/heads/trunk
Commit: d81a49076b694301fdc385af69b57f39a86a22d2
Parents: 14b52bc 5e4198f
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Nov 11 11:28:33 2016 +0000
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Nov 11 11:28:33 2016 +0000
----------------------------------------------------------------------
.../cassandra/auth/CassandraRoleManager.java | 23 +++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d81a4907/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/auth/CassandraRoleManager.java
index 5e3b92d,a90b297..c3e2626
--- a/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
+++ b/src/java/org/apache/cassandra/auth/CassandraRoleManager.java
@@@ -163,12 -163,15 +163,11 @@@ public class CassandraRoleManager imple
// to be added.
if (Schema.instance.getCFMetaData(AuthKeyspace.NAME, "users") != null)
{
- legacySelectUserStatement = (SelectStatement) prepare("SELECT * FROM %s.%s WHERE name = ?",
- AuthKeyspace.NAME,
- LEGACY_USERS_TABLE);
+ legacySelectUserStatement = prepareLegacySelectUserStatement();
+
- scheduleSetupTask(new Callable<Void>()
- {
- public Void call() throws Exception
- {
- convertLegacyData();
- return null;
- }
+ scheduleSetupTask(() -> {
+ convertLegacyData();
+ return null;
});
}
else