[ https://issues.apache.org/jira/browse/MAPREDUCE-4488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13445587#comment-13445587 ]
Karthik Kambatla commented on MAPREDUCE-4488: --------------------------------------------- As we cannot deterministically validate the lack of deadlocks in a piece of code, I was thinking of the following two options: - Verify lock ordering: in this case, we can write a test to verify that {{JobTracker#initJob()}} acquires the lock on {{JobTracker}} before acquiring the lock on {{JobInProgress}}. This would prevent future changes to the lock-ordering. - Run two threads with sleep statements to force a deadlock in most cases. However, it remains a best-effort test. I am very keen on learning alternate ways of testing deadlocks and which option to prefer. > Port MAPREDUCE-463 (The job setup and cleanup tasks should be optional) to > branch-1 > ----------------------------------------------------------------------------------- > > Key: MAPREDUCE-4488 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-4488 > Project: Hadoop Map/Reduce > Issue Type: New Feature > Components: mrv1, performance > Affects Versions: 1.0.3 > Reporter: Tom White > Assignee: Tom White > Attachments: fix-mr-4488.patch, MAPREDUCE-4488.patch > > -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira