{"record":{"id":"613bb43665795552","repo":"apache/hadoop","slug":"failed-to-satisfy-request-for","errorCode":null,"errorMessage":"Failed to satisfy request for {}","messagePattern":"Failed to satisfy request for (.+?)","errorType":"exception","errorClass":"IOException","httpStatus":null,"severity":"error","filePath":"hadoop-tools/hadoop-gridmix/src/main/java/org/apache/hadoop/mapred/gridmix/InputStriper.java","lineNumber":62,"sourceCode":"  public static final Logger LOG = LoggerFactory.getLogger(InputStriper.class);\n  int idx;\n  long currentStart;\n  FileStatus current;\n  final List<FileStatus> files = new ArrayList<FileStatus>();\n  final Configuration conf = new Configuration();\n\n  /**\n   * @param inputDir Pool from which files are requested.\n   * @param mapBytes Sum of all expected split requests.\n   */\n  InputStriper(FilePool inputDir, long mapBytes)\n      throws IOException {\n    final long inputBytes = inputDir.getInputFiles(mapBytes, files);\n    if (mapBytes > inputBytes) {\n      LOG.warn(\"Using \" + inputBytes + \"/\" + mapBytes + \" bytes\");\n    }\n    if (files.isEmpty() && mapBytes > 0) {\n      throw new IOException(\"Failed to satisfy request for \" + mapBytes);\n    }\n    current = files.isEmpty() ? null : files.get(0);\n  }\n\n  /**\n   * @param inputDir Pool used to resolve block locations.\n   * @param bytes Target byte count\n   * @param nLocs Number of block locations per split.\n   * @return A set of files satisfying the byte count, with locations weighted\n   *         to the dominating proportion of input bytes.\n   */\n  CombineFileSplit splitFor(FilePool inputDir, long bytes, int nLocs)\n      throws IOException {\n    final ArrayList<Path> paths = new ArrayList<Path>();\n    final ArrayList<Long> start = new ArrayList<Long>();\n    final ArrayList<Long> length = new ArrayList<Long>();\n    final HashMap<String,Double> sb = new HashMap<String,Double>();\n    do {","sourceCodeStart":44,"sourceCodeEnd":80,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-tools/hadoop-gridmix/src/main/java/org/apache/hadoop/mapred/gridmix/InputStriper.java#L44-L80","documentation":"Error \"Failed to satisfy request for {}\" thrown in apache/hadoop.","triggerScenarios":"Gridmix InputStriper cannot assemble the requested number of bytes from the available input pool files, so an input split requirement cannot be satisfied.","commonSituations":"See trigger scenarios.","solutions":["Add more or larger input files to the Gridmix input directory so the requested split sizes can be satisfied."],"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"}