diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java index 24af013baa..c7182c2504 100644 --- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java +++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java @@ -1396,17 +1396,10 @@ public boolean addAcl(OzoneObj obj, OzoneAcl acl) throws IOException { validateBucket(volume, bucket); String objectKey = metadataManager.getOzoneKey(volume, bucket, keyName); OmKeyInfo keyInfo = metadataManager.getKeyTable().get(objectKey); - Table keyTable; if (keyInfo == null) { - keyInfo = metadataManager.getOpenKeyTable().get(objectKey); - if (keyInfo == null) { - throw new OMException("Key not found. Key:" + - objectKey, KEY_NOT_FOUND); - } - keyTable = metadataManager.getOpenKeyTable(); - } else { - keyTable = metadataManager.getKeyTable(); + throw new OMException("Key not found. Key:" + objectKey, KEY_NOT_FOUND); } + List newAcls = new ArrayList<>(keyInfo.getAcls()); OzoneAclInfo newAcl = null; for(OzoneAclInfo a: keyInfo.getAcls()) { @@ -1442,7 +1435,7 @@ public boolean addAcl(OzoneObj obj, OzoneAcl acl) throws IOException { .setDataSize(keyInfo.getDataSize()) .setFileEncryptionInfo(keyInfo.getFileEncryptionInfo()) .build(); - keyTable.put(objectKey, newObj); + metadataManager.getKeyTable().put(objectKey, newObj); } catch (IOException ex) { if (!(ex instanceof OMException)) { LOG.error("Add acl operation failed for key:{}/{}/{}", volume, @@ -1475,16 +1468,8 @@ public boolean removeAcl(OzoneObj obj, OzoneAcl acl) throws IOException { validateBucket(volume, bucket); String objectKey = metadataManager.getOzoneKey(volume, bucket, keyName); OmKeyInfo keyInfo = metadataManager.getKeyTable().get(objectKey); - Table keyTable; if (keyInfo == null) { - keyInfo = metadataManager.getOpenKeyTable().get(objectKey); - if (keyInfo == null) { - throw new OMException("Key not found. Key:" + - objectKey, KEY_NOT_FOUND); - } - keyTable = metadataManager.getOpenKeyTable(); - } else { - keyTable = metadataManager.getKeyTable(); + throw new OMException("Key not found. Key:" + objectKey, KEY_NOT_FOUND); } List newAcls = new ArrayList<>(keyInfo.getAcls()); @@ -1529,7 +1514,7 @@ public boolean removeAcl(OzoneObj obj, OzoneAcl acl) throws IOException { .setFileEncryptionInfo(keyInfo.getFileEncryptionInfo()) .build(); - keyTable.put(objectKey, newObj); + metadataManager.getKeyTable().put(objectKey, newObj); } catch (IOException ex) { if (!(ex instanceof OMException)) { LOG.error("Remove acl operation failed for key:{}/{}/{}", volume, @@ -1562,16 +1547,8 @@ public boolean setAcl(OzoneObj obj, List acls) throws IOException { validateBucket(volume, bucket); String objectKey = metadataManager.getOzoneKey(volume, bucket, keyName); OmKeyInfo keyInfo = metadataManager.getKeyTable().get(objectKey); - Table keyTable; if (keyInfo == null) { - keyInfo = metadataManager.getOpenKeyTable().get(objectKey); - if (keyInfo == null) { - throw new OMException("Key not found. Key:" + - objectKey, KEY_NOT_FOUND); - } - keyTable = metadataManager.getOpenKeyTable(); - } else { - keyTable = metadataManager.getKeyTable(); + throw new OMException("Key not found. Key:" + objectKey, KEY_NOT_FOUND); } List newAcls = new ArrayList<>(); @@ -1592,7 +1569,7 @@ public boolean setAcl(OzoneObj obj, List acls) throws IOException { .setFileEncryptionInfo(keyInfo.getFileEncryptionInfo()) .build(); - keyTable.put(objectKey, newObj); + metadataManager.getKeyTable().put(objectKey, newObj); } catch (IOException ex) { if (!(ex instanceof OMException)) { LOG.error("Set acl operation failed for key:{}/{}/{}", volume, @@ -1624,11 +1601,7 @@ public List getAcl(OzoneObj obj) throws IOException { String objectKey = metadataManager.getOzoneKey(volume, bucket, keyName); OmKeyInfo keyInfo = metadataManager.getKeyTable().get(objectKey); if (keyInfo == null) { - keyInfo = metadataManager.getOpenKeyTable().get(objectKey); - if (keyInfo == null) { - throw new OMException("Key not found. Key:" + - objectKey, KEY_NOT_FOUND); - } + throw new OMException("Key not found. Key:" + objectKey, KEY_NOT_FOUND); } List acls = new ArrayList<>();