{"record":{"id":"67d71350627a36b7","repo":"apache/hadoop","slug":"invalid-link-name","errorCode":null,"errorMessage":"Invalid link name: {}","messagePattern":"Invalid link name: (.+?)","errorType":"exception","errorClass":"InvalidPathException","httpStatus":null,"severity":"error","filePath":"hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirSymlinkOp.java","lineNumber":43,"sourceCode":"import org.apache.hadoop.fs.permission.PermissionStatus;\nimport org.apache.hadoop.hdfs.DFSUtil;\nimport org.apache.hadoop.hdfs.protocol.QuotaExceededException;\nimport org.apache.hadoop.hdfs.server.namenode.FSDirectory.DirOp;\n\nimport java.io.IOException;\n\nimport static org.apache.hadoop.util.Time.now;\n\nclass FSDirSymlinkOp {\n\n  static FileStatus createSymlinkInt(\n      FSNamesystem fsn, String target, final String linkArg,\n      PermissionStatus dirPerms, boolean createParent, boolean logRetryCache)\n      throws IOException {\n    FSDirectory fsd = fsn.getFSDirectory();\n    String link = linkArg;\n    if (!DFSUtil.isValidName(link)) {\n      throw new InvalidPathException(\"Invalid link name: \" + link);\n    }\n    if (FSDirectory.isReservedName(target) || target.isEmpty()\n        || FSDirectory.isExactReservedName(target)) {\n      throw new InvalidPathException(\"Invalid target name: \" + target);\n    }\n\n    if (NameNode.stateChangeLog.isDebugEnabled()) {\n      NameNode.stateChangeLog.debug(\"DIR* NameSystem.createSymlink: target=\"\n          + target + \" link=\" + link);\n    }\n\n    FSPermissionChecker pc = fsn.getPermissionChecker();\n    INodesInPath iip;\n    fsd.writeLock();\n    try {\n      iip = fsd.resolvePath(pc, link, DirOp.WRITE_LINK);\n      link = iip.getPath();\n      if (!createParent) {","sourceCodeStart":25,"sourceCodeEnd":61,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirSymlinkOp.java#L25-L61","documentation":"Error \"Invalid link name: {}\" thrown in apache/hadoop.","triggerScenarios":"Creating a symlink whose link name is null, empty, or not a valid HDFS path component.","commonSituations":"See trigger scenarios.","solutions":["Provide a valid link path: non-empty, no illegal characters, and not a reserved name."],"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"}