client-mr/core/src/main/java/org/apache/hadoop/mapreduce/task/reduce/RssFetcher.java [171:202]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        uncompressedData = decompressedBuffer.array();
        unCompressionLength += compressedBlock.getUncompressLength();
        long decompressDuration = System.currentTimeMillis() - startDecompress;
        decompressTime += decompressDuration;
      } else {
        uncompressedData = ByteBufferUtils.bufferToArray(compressedData);
        unCompressionLength += uncompressedData.length;
      }
    }

    if (uncompressedData != null) {
      // start to merge
      final long startSerialization = System.currentTimeMillis();
      if (issueMapOutputMerge()) {
        long serializationDuration = System.currentTimeMillis() - startSerialization;
        serializeTime += serializationDuration;
        // if reserve successes, reset status for next fetch
        if (hasPendingData) {
          waitTime += System.currentTimeMillis() - startWait;
        }
        hasPendingData = false;
        uncompressedData = null;
      } else {
        // if reserve fail, return and wait
        startWait = System.currentTimeMillis();
        return;
      }

      // update some status
      copyBlockCount++;
      copyTime = readTime + decompressTime + serializeTime + waitTime;
      updateStatus();
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



client-tez/src/main/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/RssTezShuffleDataFetcher.java [161:192]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        uncompressedData = decompressedBuffer.array();
        unCompressionLength += compressedBlock.getUncompressLength();
        long decompressDuration = System.currentTimeMillis() - startDecompress;
        decompressTime += decompressDuration;
      } else {
        uncompressedData = ByteBufferUtils.bufferToArray(compressedData);
        unCompressionLength += uncompressedData.length;
      }
    }

    if (uncompressedData != null) {
      // start to merge
      final long startSerialization = System.currentTimeMillis();
      if (issueMapOutputMerge()) {
        long serializationDuration = System.currentTimeMillis() - startSerialization;
        serializeTime += serializationDuration;
        // if reserve successes, reset status for next fetch
        if (hasPendingData) {
          waitTime += System.currentTimeMillis() - startWait;
        }
        hasPendingData = false;
        uncompressedData = null;
      } else {
        // if reserve fail, return and wait
        startWait = System.currentTimeMillis();
        return;
      }

      // update some status
      copyBlockCount++;
      copyTime = readTime + decompressTime + serializeTime + waitTime;
      updateStatus();
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



