Issue Details (XML | Word | Printable)

Key: HADOOP-5726
Type: Improvement Improvement
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: rahul k singh
Reporter: Hemanth Yamijala
Votes: 0
Watchers: 2
Operations

If you were logged in you would be able to see more operations.
Hadoop Common

Remove pre-emption from the capacity scheduler code base

Created: 23/Apr/09 07:50 AM   Updated: 09/Nov/09 09:33 AM
Return to search
Component/s: None
Affects Version/s: None
Fix Version/s: 0.20.1

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works cs-without-preemption-23-1-2009.patch 2009-04-23 10:17 AM rahul k singh 97 kB
Issue Links:
Blocker
 

Hadoop Flags: Reviewed, Incompatible change
Release Note:
Removed pre-emption from capacity scheduler. The impact of this change is that capacities for queues can no longer be guaranteed within a given span of time. Also changed configuration variables to remove pre-emption related variables and better reflect the absence of guarantees.
Resolution Date: 05/May/09 07:36 AM


 Description  « Hide
In an effort to simplify the code base, we would like to remove the pre-emption related code in the capacity scheduler. We would reintroduce this (possibly with some revisions to the original design) after a while. This will be an incompatible change. Any objections ?

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
rahul k singh added a comment - 23/Apr/09 10:17 AM
Attaching the patch .

Arun C Murthy added a comment - 24/Apr/09 09:59 AM
+1 for the direction.

I'd propose we take this opportunity to further improve the capacity-scheduler by simplifying it's design, refactoring inner-classes into standalone classes, using the JobChangeEvents more extensively rather than re-sort queues on every heartbeat etc. Maybe a new jira?

Thoughts?


rahul k singh added a comment - 30/Apr/09 03:28 PM
[exec]
[exec]
[exec]
[exec]
[exec] +1 overall.
[exec]
[exec] +1 @author. The patch does not contain any @author tags.
[exec]
[exec] +1 tests included. The patch appears to include 7 new or modified tests.
[exec]
[exec] +1 javadoc. The javadoc tool did not generate any warning messages.
[exec]
[exec] +1 javac. The applied patch does not increase the total number of javac compiler warnings.
[exec]
[exec] +1 findbugs. The patch does not introduce any new Findbugs warnings.
[exec]
[exec] +1 Eclipse classpath. The patch retains Eclipse classpath integrity.
[exec]
[exec] +1 release audit. The applied patch does not increase the total number of release audit warnings.
[exec]
[exec]
[exec]
[exec]
[exec] ======================================================================
[exec] ======================================================================
[exec] Finished build.
[exec] ======================================================================
[exec] ======================================================================

Hemanth Yamijala added a comment - 04/May/09 01:34 PM

I'd propose we take this opportunity to further improve the capacity-scheduler by simplifying it's design, refactoring inner-classes into standalone classes, using the JobChangeEvents more extensively rather than re-sort queues on every heartbeat etc. Maybe a new jira?

Arun, I agree. Particularly with the refactoring of inner classes into standalone classes. Also, I think we should look at combining all queue state into a single class and promote it to a first class object. Today, this state is split between JobQueueManager and QueueSchedulingInfo.

Can you please open a new jira with your ideas and we can discuss there ?


Hemanth Yamijala added a comment - 04/May/09 01:35 PM
At this point, it looks like there's no objection to the removal of this code. I plan to commit this soon.

On a related note, though this is a major change, it appears that committing this to the 0.20 branch will significantly simplify further development. Is there an objection to this ?


Hemanth Yamijala added a comment - 05/May/09 07:36 AM
I just committed this to trunk and branch 0.20. Thanks, Rahul !

Hudson added a comment - 05/May/09 07:06 PM
Integrated in Hadoop-trunk #827 (See http://hudson.zones.apache.org/hudson/job/Hadoop-trunk/827/)
. Remove pre-emption from capacity scheduler code base. Contributed by Rahul Kumar Singh.

Vinod K V added a comment - 09/Nov/09 09:33 AM
Just for the sake of record: If ever, we wish to bring back reclamation, we should reopen and fix MAPREDUCE-515.