{"record":{"id":"811fbcd1514dc9c3","repo":"apache/hadoop","slug":"duplicate-acl-entries-are-not-allowed","errorCode":null,"errorMessage":"Duplicate acl entries are not allowed.","messagePattern":"Duplicate acl entries are not allowed\\.","errorType":"validation","errorClass":"InvalidAclOperationException","httpStatus":null,"severity":"error","filePath":"hadoop-tools/hadoop-azure/src/main/java/org/apache/hadoop/fs/azurebfs/services/AbfsAclHelper.java","lineNumber":55,"sourceCode":" * from setAcl and getAcl.\n */\n@InterfaceAudience.Private\n@InterfaceStability.Evolving\npublic final class AbfsAclHelper {\n\n  private AbfsAclHelper() {\n    // not called\n  }\n\n  public static Map<String, String> deserializeAclSpec(final String aclSpecString) throws AzureBlobFileSystemException {\n    final Map<String, String> aclEntries  = new HashMap<>();\n    final String[] aceArray = aclSpecString.split(AbfsHttpConstants.COMMA);\n    for (String ace : aceArray) {\n      int idx = ace.lastIndexOf(AbfsHttpConstants.COLON);\n      final String key = ace.substring(0, idx);\n      final String val = ace.substring(idx + 1);\n      if (aclEntries.containsKey(key)) {\n        throw new InvalidAclOperationException(\"Duplicate acl entries are not allowed.\");\n      }\n      aclEntries.put(key, val);\n    }\n    return aclEntries;\n  }\n\n  public static String serializeAclSpec(final Map<String, String> aclEntries) {\n    final StringBuilder sb = new StringBuilder();\n    for (Map.Entry<String, String> aclEntry : aclEntries.entrySet()) {\n      sb.append(aclEntry.getKey() + AbfsHttpConstants.COLON + aclEntry.getValue() + AbfsHttpConstants.COMMA);\n    }\n    if (sb.length() > 0) {\n      sb.setLength(sb.length() - 1);\n    }\n    return sb.toString();\n  }\n\n  public static String processAclString(final String aclSpecString) {","sourceCodeStart":37,"sourceCodeEnd":73,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-tools/hadoop-azure/src/main/java/org/apache/hadoop/fs/azurebfs/services/AbfsAclHelper.java#L37-L73","documentation":"Error \"Duplicate acl entries are not allowed.\" thrown in apache/hadoop.","triggerScenarios":"An ACL specification passed to ABFS contains the same entry twice.","commonSituations":"See trigger scenarios.","solutions":["Remove duplicate entries from the ACL spec before calling setAcl/modifyAclEntries.","Ensure each user/group appears only once in the access or default ACL."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2add9630210752f88ceb1bb74eb65e37bf41da8e","analyzedAt":"2026-08-22T19:55:07.957Z","schemaVersion":2},"datasetVersion":"2026-08-22T20:17:22.307Z"}