{"record":{"id":"88f436b5c4741660","repo":"apache/hadoop","slug":"unable-to-parse-configuration-fs-permissions-umask","errorCode":null,"errorMessage":"Unable to parse configuration fs.permissions.umask-mode with value {} as {} umask.","messagePattern":"Unable to parse configuration fs\\.permissions\\.umask-mode with value (.+?) as (.+?) umask\\.","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java","lineNumber":344,"sourceCode":"    int umask = DEFAULT_UMASK;\n    \n    // To ensure backward compatibility first use the deprecated key.\n    // If the deprecated key is not present then check for the new key\n    if(conf != null) {\n      String confUmask = conf.get(UMASK_LABEL);\n      try {\n        if(confUmask != null) {\n          umask = new UmaskParser(confUmask).getUMask();\n        }\n      } catch(IllegalArgumentException iae) {\n        // Provide more explanation for user-facing message\n        String type = iae instanceof NumberFormatException ? \"decimal\"\n            : \"octal or symbolic\";\n        String error = \"Unable to parse configuration \" + UMASK_LABEL\n            + \" with value \" + confUmask + \" as \" + type + \" umask.\";\n        LOG.warn(error);\n\n        throw new IllegalArgumentException(error);\n      }\n    }\n    \n    return new FsPermission((short)umask);\n  }\n\n  public boolean getStickyBit() {\n    return stickyBit;\n  }\n\n  /**\n   * Returns true if there is also an ACL (access control list).\n   *\n   * @return boolean true if there is also an ACL (access control list).\n   * @deprecated Get acl bit from the {@link org.apache.hadoop.fs.FileStatus}\n   * object.\n   */\n  @Deprecated","sourceCodeStart":326,"sourceCodeEnd":362,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java#L326-L362","documentation":"Error \"Unable to parse configuration fs.permissions.umask-mode with value {} as {} umask.\" thrown in apache/hadoop.","triggerScenarios":"Thrown when the configuration key fs.permissions.umask-mode contains a value that cannot be parsed as either an octal or symbolic umask at FsPermission.getUMask time.","commonSituations":"See trigger scenarios.","solutions":["Set fs.permissions.umask-mode to a valid octal or symbolic umask value (e.g. 022 or 'u=rwx,g=rx,o=rx').","Correct the configuration value in core-site.xml so it parses as a umask."],"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"}