code: public ManagedBuffer getBlockData(
        String appId,
        String execId,
        int shuffleId,
        int mapId,
        int reduceId) {
      ExecutorShuffleInfo executor = executors.get(new AppExecId(appId, execId));
      if (executor == null) {
        throw new RuntimeException(
          String.format("Executor is not registered (appId=%s, execId=%s)", appId, execId));
      }
      return getSortBasedShuffleBlockData(executor, shuffleId, mapId, reduceId);
    }
docs: Obtains a FileSegmentManagedBuffer from (shuffleId, mapId, reduceId). We make assumptions
  about how the hash and sort based shuffles store their data.