apache/hadoop · error · IllegalArgumentException
length != %d(unixSymbolicPermission=%s)
Error message
length != %d(unixSymbolicPermission=%s)
What it means
Error "length != %d(unixSymbolicPermission=%s)" thrown in apache/hadoop.
Source
Thrown at hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java:457
* Get the default permission for cache pools.
*
* @return CachePoolDefault FsPermission.
*/
public static FsPermission getCachePoolDefault() {
return new FsPermission((short)00755);
}
/**
* Create a FsPermission from a Unix symbolic permission string
* @param unixSymbolicPermission e.g. "-rw-rw-rw-"
* @return FsPermission.
*/
public static FsPermission valueOf(String unixSymbolicPermission) {
if (unixSymbolicPermission == null) {
return null;
}
else if (unixSymbolicPermission.length() != MAX_PERMISSION_LENGTH) {
throw new IllegalArgumentException(String.format(
"length != %d(unixSymbolicPermission=%s)", MAX_PERMISSION_LENGTH,
unixSymbolicPermission));
}
int n = 0;
for(int i = 1; i < unixSymbolicPermission.length(); i++) {
n = n << 1;
char c = unixSymbolicPermission.charAt(i);
n += (c == '-' || c == 'T' || c == 'S') ? 0: 1;
}
// Add sticky bit value if set
if(unixSymbolicPermission.charAt(9) == 't' ||
unixSymbolicPermission.charAt(9) == 'T')
n += 01000;
return new FsPermission((short)n);
}View on GitHub (pinned to 2add963021)
Solutions
- Pass a 9-character symbolic permission string (three rwx triplets, e.g. 'rwxr-xr-x').
- Do not include extra characters; the sticky/setuid bits are handled separately.
When it happens
Trigger: Thrown by FsPermission when a Unix symbolic permission string does not have exactly the expected length (9 characters) for the rwxrwxrwx format.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/hadoop@2add963021 (2026-08-22).
Data as JSON: /api/errors/94c5ab9ddb1cce21.
Report an issue: GitHub.