Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.1.0
-
None
-
None
Description
org.apache.hadoop.mapred.JobTracker.RetireJobs.run()
locks resources in this order
synchronized (jobs) {
synchronized (jobInitQueue) {
synchronized (jobsByArrival) {
org.apache.hadoop.mapred.JobTracker.submitJob()
locks resources in a different order
synchronized (jobs) {
synchronized (jobsByArrival) {
synchronized (jobInitQueue) {
This potentially can lead to a deadlock.
Unless there is common lock on top of it in which case these
three locks are redundant.