code: private void validateNumberOfTasks(int splits, int reduceTasks, JobConf conf) 
      throws IOException {
      int maxTasks = conf.getInt("mapred.jobtracker.maxtasks.per.job", -1);
      int totalTasks = splits + reduceTasks;
  
      if ((maxTasks!= -1) && (totalTasks > maxTasks)) {
        throw new IOException(
                  "The number of tasks for this job " +
                  totalTasks +
                  " exceeds the configured limit " + maxTasks);
      }
    }
docs: JobTrcker applies this limit against the sum of mappers and reducers.