{"record":{"id":"ae90495d8bf01a85","repo":"apache/hadoop","slug":"could-not-find-jobid","errorCode":null,"errorMessage":"Could not find jobid","messagePattern":"Could not find jobid","errorType":"http","errorClass":"IOException","httpStatus":401,"severity":"error","filePath":"hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/main/java/org/apache/hadoop/mapred/ShuffleChannelHandler.java","lineNumber":452,"sourceCode":"\n  @SuppressWarnings(\"checkstyle:VisibilityModifier\")\n  static class MapOutputInfo {\n    final Path mapOutputFileName;\n    final IndexRecord indexRecord;\n\n    MapOutputInfo(Path mapOutputFileName, IndexRecord indexRecord) {\n      this.mapOutputFileName = mapOutputFileName;\n      this.indexRecord = indexRecord;\n    }\n  }\n\n  protected void verifyRequest(String appid, ChannelHandlerContext ctx,\n                               HttpRequest request, HttpResponse response, URL requestUri)\n      throws IOException {\n    SecretKey tokenSecret = handlerCtx.secretManager.retrieveTokenSecret(appid);\n    if (null == tokenSecret) {\n      LOG.info(\"Request for unknown token {}, channel id: {}\", appid, ctx.channel().id());\n      throw new IOException(\"Could not find jobid\");\n    }\n    // encrypting URL\n    String encryptedURL = SecureShuffleUtils.buildMsgFrom(requestUri);\n    // hash from the fetcher\n    String urlHashStr =\n        request.headers().get(SecureShuffleUtils.HTTP_HEADER_URL_HASH);\n    if (urlHashStr == null) {\n      LOG.info(\"Missing header hash for {}, channel id: {}\", appid, ctx.channel().id());\n      throw new IOException(\"fetcher cannot be authenticated\");\n    }\n    if (LOG.isDebugEnabled()) {\n      int len = urlHashStr.length();\n      LOG.debug(\"Verifying request. encryptedURL:{}, hash:{}, channel id: \" +\n              \"{}\", encryptedURL,\n          urlHashStr.substring(len - len / 2, len - 1), ctx.channel().id());\n    }\n    // verify - throws exception\n    SecureShuffleUtils.verifyReply(urlHashStr, encryptedURL, tokenSecret);","sourceCodeStart":434,"sourceCodeEnd":470,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/main/java/org/apache/hadoop/mapred/ShuffleChannelHandler.java#L434-L470","documentation":"Error \"Could not find jobid\" thrown in apache/hadoop.","triggerScenarios":"Thrown by ShuffleChannelHandler when a shuffle HTTP request does not carry a valid jobId parameter. The reducer's shuffle URL is malformed; verify the shuffle request URI includes mapId, jobId and reduceId parameters.","commonSituations":"See trigger scenarios.","solutions":["Include a valid jobId in the shuffle request URL; check the fetcher constructs the request path correctly.","Verify the shuffle handler is serving the correct application and the map output index files exist."],"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"}