public JvmRunner(JvmEnv env, JobID jobId) { this.env = env; this.jvmId = new JVMId(jobId, isMap, rand.nextInt()); this.numTasksToRun = env.conf.getNumTasksToExecutePerJvm(); LOG.info("In JvmRunner constructed JVM ID: " + jvmId); } public void run() {
public JvmRunner(JvmEnv env, JobID jobId) { this.env = env; this.jvmId = new JVMId(jobId, isMap, rand.nextInt()); this.numTasksToRun = env.conf.getNumTasksToExecutePerJvm(); LOG.info("In JvmRunner constructed JVM ID: " + jvmId); } public void run() {
public JvmRunner(JvmEnv env, JobID jobId) { this.env = env; this.jvmId = new JVMId(jobId, isMap, rand.nextInt()); this.numTasksToRun = env.conf.getNumTasksToExecutePerJvm(); this.initalContext = new TaskControllerContext(); initalContext.sleeptimeBeforeSigkill = tracker.getJobConf() .getLong(TTConfig.TT_SLEEP_TIME_BEFORE_SIG_KILL, ProcessTree.DEFAULT_SLEEPTIME_BEFORE_SIGKILL); LOG.info("In JvmRunner constructed JVM ID: " + jvmId); } public void run() {
if (env.conf.getNumTasksToExecutePerJvm() != 1) { FileUtil.fullyDelete(env.workDir);
public void runChild(JvmEnv env) { try { env.vargs.add(Integer.toString(jvmId.getId())); //Launch the task controller to run task JVM initalContext.env = env; tracker.getTaskController().launchTaskJVM(initalContext); } catch (IOException ioe) { // do nothing // error and output are appropriately redirected } finally { // handle the exit code shexec = initalContext.shExec; if (shexec == null) { return; } kill(); int exitCode = shexec.getExitCode(); updateOnJvmExit(jvmId, exitCode); LOG.info("JVM : " + jvmId + " exited with exit code " + exitCode + ". Number of tasks it ran: " + numTasksRan); try { // In case of jvm-reuse, //the task jvm cleans up the common workdir for every //task at the beginning of each task in the task JVM. //For the last task, we do it here. if (env.conf.getNumTasksToExecutePerJvm() != 1) { deleteWorkDir(tracker, initalContext.task); } } catch (IOException ie){} } }
if (localJobConf.getNumTasksToExecutePerJvm() == 1) { directoryCleanupThread.addToQueue(getLocalFiles(defaultJobConf, taskDir)); if (localJobConf.getNumTasksToExecutePerJvm() == 1) { directoryCleanupThread.addToQueue(getLocalFiles(defaultJobConf, taskDir+"/work"));
assertEquals(1, conf.getNumTasksToExecutePerJvm());
if (env.conf.getNumTasksToExecutePerJvm() != 1) { tracker.directoryCleanupThread.addToQueue( TaskTracker.buildTaskControllerPathDeletionContexts(
numTasksToExecute = job.getNumTasksToExecutePerJvm(); assert(numTasksToExecute != 0);
numTasksToExecute = job.getNumTasksToExecutePerJvm(); assert(numTasksToExecute != 0); TaskLog.cleanup(job.getInt("mapred.userlog.retain.hours", 24));
numTasksToExecute = job.getNumTasksToExecutePerJvm(); assert(numTasksToExecute != 0);
if (localJobConf.getNumTasksToExecutePerJvm() == 1) { PathDeletionContext[] contexts = buildTaskControllerPathDeletionContexts(localFs, getLocalDirs(), if (localJobConf.getNumTasksToExecutePerJvm() == 1) { PathDeletionContext[] contexts = buildTaskControllerPathDeletionContexts(localFs, getLocalDirs(),
if (localJobConf.getNumTasksToExecutePerJvm() == 1) { if (localJobConf.getNumTasksToExecutePerJvm() == 1) { PathDeletionContext[] contexts = buildTaskControllerTaskPathDeletionContexts(localFs,