Repository: hbase Updated Branches: refs/heads/master f11242742 -> 1eb24e4e8
HBASE-17260 Procedure v2 - Add setOwner() overload taking a User instance Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/1eb24e4e Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/1eb24e4e Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/1eb24e4e Branch: refs/heads/master Commit: 1eb24e4e8e8d2df4ba5cd3aa0223dfd08e1a90aa Parents: f112427 Author: Matteo Bertozzi <[email protected]> Authored: Tue Dec 6 10:32:43 2016 -0800 Committer: Matteo Bertozzi <[email protected]> Committed: Tue Dec 6 10:32:43 2016 -0800 ---------------------------------------------------------------------- .../java/org/apache/hadoop/hbase/procedure2/Procedure.java | 6 ++++++ .../procedure/AbstractStateMachineNamespaceProcedure.java | 2 +- .../master/procedure/AbstractStateMachineTableProcedure.java | 2 +- .../hadoop/hbase/master/procedure/ServerCrashProcedure.java | 2 +- .../hadoop/hbase/security/access/TestAccessController.java | 6 +++--- 5 files changed, 12 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/1eb24e4e/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java ---------------------------------------------------------------------- diff --git a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java index 19604e5..68d16a0 100644 --- a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java +++ b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java @@ -30,6 +30,7 @@ import org.apache.hadoop.hbase.classification.InterfaceStability; import org.apache.hadoop.hbase.exceptions.TimeoutIOException; import org.apache.hadoop.hbase.procedure2.util.StringUtils; import org.apache.hadoop.hbase.shaded.protobuf.generated.ProcedureProtos.ProcedureState; +import org.apache.hadoop.hbase.security.User; import org.apache.hadoop.hbase.util.EnvironmentEdgeManager; import org.apache.hadoop.hbase.util.NonceKey; @@ -392,6 +393,11 @@ public abstract class Procedure<TEnvironment> implements Comparable<Procedure> { this.owner = StringUtils.isEmpty(owner) ? null : owner; } + public void setOwner(final User owner) { + assert owner != null : "expected owner to be not null"; + setOwner(owner.getShortName()); + } + /** * Called on store load to initialize the Procedure internals after * the creation/deserialization. http://git-wip-us.apache.org/repos/asf/hbase/blob/1eb24e4e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.java index 0ba7556..a514532 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineNamespaceProcedure.java @@ -36,7 +36,7 @@ public abstract class AbstractStateMachineNamespaceProcedure<TState> } protected AbstractStateMachineNamespaceProcedure(final MasterProcedureEnv env) { - this.setOwner(env.getRequestUser().getShortName()); + this.setOwner(env.getRequestUser()); } protected abstract String getNamespaceName(); http://git-wip-us.apache.org/repos/asf/hbase/blob/1eb24e4e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.java index 7fd5a6f..7cced45 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/AbstractStateMachineTableProcedure.java @@ -53,7 +53,7 @@ public abstract class AbstractStateMachineTableProcedure<TState> protected AbstractStateMachineTableProcedure(final MasterProcedureEnv env, final ProcedurePrepareLatch latch) { this.user = env.getRequestUser(); - this.setOwner(user.getShortName()); + this.setOwner(user); // used for compatibility with clients without procedures // they need a sync TableExistsException, TableNotFoundException, TableNotDisabledException, ... http://git-wip-us.apache.org/repos/asf/hbase/blob/1eb24e4e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.java index fad62b9..98a2152 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerCrashProcedure.java @@ -153,7 +153,7 @@ implements ServerProcedureInterface { this.serverName = serverName; this.shouldSplitWal = shouldSplitWal; this.carryingMeta = carryingMeta; - this.setOwner(env.getRequestUser().getShortName()); + this.setOwner(env.getRequestUser()); } /** http://git-wip-us.apache.org/repos/asf/hbase/blob/1eb24e4e/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java index c4e9f41..33ff094 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java @@ -548,7 +548,7 @@ public class TestAccessController extends SecureTestUtil { throws IOException { this.tableName = tableName; this.setTimeout(180000); // Timeout in 3 minutes - this.setOwner(env.getRequestUser().getUGI().getShortUserName()); + this.setOwner(env.getRequestUser()); } @Override @@ -600,7 +600,7 @@ public class TestAccessController extends SecureTestUtil { final ProcedureExecutor<MasterProcedureEnv> procExec = TEST_UTIL.getHBaseCluster().getMaster().getMasterProcedureExecutor(); Procedure proc = new TestTableDDLProcedure(procExec.getEnvironment(), tableName); - proc.setOwner(USER_OWNER.getShortName()); + proc.setOwner(USER_OWNER); final long procId = procExec.submitProcedure(proc); AccessTestAction abortProcedureAction = new AccessTestAction() { @@ -624,7 +624,7 @@ public class TestAccessController extends SecureTestUtil { final ProcedureExecutor<MasterProcedureEnv> procExec = TEST_UTIL.getHBaseCluster().getMaster().getMasterProcedureExecutor(); Procedure proc = new TestTableDDLProcedure(procExec.getEnvironment(), tableName); - proc.setOwner(USER_OWNER.getShortName()); + proc.setOwner(USER_OWNER); final long procId = procExec.submitProcedure(proc); final List<ProcedureInfo> procInfoList = procExec.listProcedures();
