{"record":{"id":"e5eb910442c645ca","repo":"apache/hadoop","slug":"mapreduce-reduce-markreset-buffer-percent","errorCode":null,"errorMessage":"mapreduce.reduce.markreset.buffer.percent{}","messagePattern":"mapreduce\\.reduce\\.markreset\\.buffer\\.percent(.+?)","errorType":"exception","errorClass":"IOException","httpStatus":null,"severity":"error","filePath":"hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/BackupStore.java","lineNumber":98,"sourceCode":"  private DataInputBuffer currentKey = null;\n  private DataInputBuffer currentValue = new DataInputBuffer();\n  private DataInputBuffer currentDiskValue = new DataInputBuffer();\n \n  private boolean hasMore = false;\n  private boolean inReset = false;\n  private boolean clearMarkFlag = false;\n  private boolean lastSegmentEOF = false;\n  \n  private Configuration conf;\n\n  public BackupStore(Configuration conf, TaskAttemptID taskid)\n  throws IOException {\n    \n    final float bufferPercent =\n      conf.getFloat(JobContext.REDUCE_MARKRESET_BUFFER_PERCENT, 0f);\n\n    if (bufferPercent > 1.0 || bufferPercent < 0.0) {\n      throw new IOException(JobContext.REDUCE_MARKRESET_BUFFER_PERCENT +\n          bufferPercent);\n    }\n\n    int maxSize = (int)Math.min(\n        Runtime.getRuntime().maxMemory() * bufferPercent, Integer.MAX_VALUE);\n\n    // Support an absolute size also.\n    int tmp = conf.getInt(JobContext.REDUCE_MARKRESET_BUFFER_SIZE, 0);\n    if (tmp >  0) {\n      maxSize = tmp;\n    }\n\n    memCache = new MemoryCache(maxSize);\n    fileCache = new FileCache(conf);\n    tid = taskid;\n    \n    this.conf = conf;\n    ","sourceCodeStart":80,"sourceCodeEnd":116,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/BackupStore.java#L80-L116","documentation":"Error \"mapreduce.reduce.markreset.buffer.percent{}\" thrown in apache/hadoop.","triggerScenarios":"Thrown at hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/BackupStore.java:98 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set mapreduce.reduce.markreset.buffer.percent to a float value between 0.0 and 1.0 in the job configuration.","If the property is unset, remove any invalid override so the default mark/reset buffer percentage is used."],"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"}