You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Arun C Murthy (JIRA)" <ji...@apache.org> on 2008/09/30 08:11:44 UTC

[jira] Commented: (HADOOP-4232) Race condition in JVM reuse when more than one slot becomes free

    [ https://issues.apache.org/jira/browse/HADOOP-4232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12635678#action_12635678 ] 

Arun C Murthy commented on HADOOP-4232:
---------------------------------------

+1 with minor caveats:

1. We could add more information to the RuntimeException in JvmManagerType.reapJvm: no. of current jvms, their jobids etc. This will help in debugging, maybe a comment explaining the need for that exception too might help?
2. TaskTracker.TaskInProgress.launchTask should log information such as the Task's state etc. if we did not launch it (i.e. state != UNASSIGNED) just to aid debugging if need be.


> Race condition in JVM reuse when more than one slot becomes free
> ----------------------------------------------------------------
>
>                 Key: HADOOP-4232
>                 URL: https://issues.apache.org/jira/browse/HADOOP-4232
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: mapred
>    Affects Versions: 0.19.0
>            Reporter: Devaraj Das
>            Assignee: Devaraj Das
>            Priority: Blocker
>             Fix For: 0.19.0
>
>         Attachments: 4232.patch
>
>
> A race condition exists where there are two or more slots free and there are two or more tasks waiting to run. As an example, consider a case where there are two free slots and there are two tasks waiting to run. JVM_job1 and JVM_job2 are the two idle jvms in memory. A waiting task, task job1_t1, kills the JVM_job2 and spawns a new one, JVM_1_job1. While JVM_1_job1 is initializing (it is marked busy during initialization), JVM_job1 picks this task up and hence this becomes busy as well. Another waiting task, job3_t1 finds both the JVMs busy and doesn't spawn a new JVM.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.