diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/SecureBulkLoadEndpoint.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/SecureBulkLoadEndpoint.java index 710ab44..f480ca6 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/SecureBulkLoadEndpoint.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/SecureBulkLoadEndpoint.java @@ -272,6 +272,14 @@ public class SecureBulkLoadEndpoint extends SecureBulkLoadService } } + final UserGroupInformation rsUser; + try { + rsUser = UserGroupInformation.getCurrentUser(); + } catch (IOException e) { + LOG.fatal("Could not get current user", e); + return; + } + loaded = ugi.doAs(new PrivilegedAction() { @Override public Boolean run() { @@ -295,7 +303,7 @@ public class SecureBulkLoadEndpoint extends SecureBulkLoadService } finally { if (fs != null) { try { - if(!UserGroupInformation.getCurrentUser().equals(ugi)) { + if(!rsUser.equals(ugi)) { FileSystem.closeAllForUGI(ugi); } } catch (IOException e) {