static void runTest(int maxTasks, int numMaps, int numReds, boolean shouldFail) throws Exception { JobConf conf = new JobConf(); conf.setInt(JTConfig.JT_TASKS_PER_JOB, maxTasks); conf.set(JTConfig.JT_IPC_HANDLER_COUNT, "1"); MiniMRCluster mr = new MiniMRCluster(0, "file:///", 1, null, null, conf); JobTracker jt = mr.getJobTrackerRunner().getJobTracker(); JobConf jc = mr.createJobConf(); jc.setNumMapTasks(numMaps); jc.setNumReduceTasks(numReds); JobInProgress jip = new JobInProgress(new JobID(), jc, jt); boolean failed = false; try { jip.checkTaskLimits(); } catch (IOException e) { failed = true; } assertEquals(shouldFail, failed); mr.shutdown(); }
numMapTasks = taskSplitMetaInfo.length; checkTaskLimits();