HBASE-24222 [HBCK2] Remove FSUtils.checkAccess and replace with FileSystem.access in hbase-operator-tools (#58)
Signed-off-by: niuyulin <niuyulin@xiaomi.com>
Signed-off-by: Sakthi <sakthi@apache.org>
diff --git a/hbase-hbck2/src/main/java/org/apache/hbase/hbck1/HBaseFsck.java b/hbase-hbck2/src/main/java/org/apache/hbase/hbck1/HBaseFsck.java
index dcf88bb..7cda06b 100644
--- a/hbase-hbck2/src/main/java/org/apache/hbase/hbck1/HBaseFsck.java
+++ b/hbase-hbck2/src/main/java/org/apache/hbase/hbck1/HBaseFsck.java
@@ -125,7 +125,6 @@
import org.apache.hadoop.hbase.replication.ReplicationPeerDescription;
import org.apache.hadoop.hbase.replication.ReplicationQueueStorage;
import org.apache.hadoop.hbase.replication.ReplicationStorageFactory;
-import org.apache.hadoop.hbase.security.AccessDeniedException;
import org.apache.hadoop.hbase.security.UserProvider;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.Bytes.ByteArrayComparator;
@@ -145,6 +144,7 @@
import org.apache.hadoop.hbase.zookeeper.ZNodePaths;
import org.apache.hadoop.hdfs.protocol.AlreadyBeingCreatedException;
import org.apache.hadoop.ipc.RemoteException;
+import org.apache.hadoop.security.AccessControlException;
import org.apache.hadoop.security.UserGroupInformation;
import org.apache.hadoop.util.ReflectionUtils;
import org.apache.hadoop.util.Tool;
@@ -2450,7 +2450,7 @@
}
}
- private void preCheckPermission() throws IOException, AccessDeniedException {
+ private void preCheckPermission() throws IOException {
if (shouldIgnorePreCheckPermission()) {
return;
}
@@ -2462,8 +2462,8 @@
FileStatus[] files = fs.listStatus(hbaseDir);
for (FileStatus file : files) {
try {
- FSUtils.checkAccess(ugi, file, FsAction.WRITE);
- } catch (AccessDeniedException ace) {
+ fs.access(file.getPath(), FsAction.WRITE);
+ } catch (AccessControlException ace) {
LOG.warn("Got AccessDeniedException when preCheckPermission ", ace);
errors.reportError(ErrorReporter.ERROR_CODE.WRONG_USAGE, "Current user " +
ugi.getUserName() + " does not have write perms to " + file.getPath() +