aurora-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Maxim Khutornenko" <ma...@apache.org>
Subject Re: Review Request 32220: Making preemptor asynchronous. Part 2 - async handling.
Date Thu, 19 Mar 2015 23:39:23 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/32220/
-----------------------------------------------------------

(Updated March 19, 2015, 11:39 p.m.)


Review request for Aurora, Bill Farner and Zameer Manji.


Changes
-------

Bill's comments.


Bugs: AURORA-1158
    https://issues.apache.org/jira/browse/AURORA-1158


Repository: aurora


Description
-------

This diff makes preemption asynchronous wrt the scheduling loop. New flow works as follows:
- TaskScheduler is unable to schedule a task and calls into PreemptorImpl.attemptPreemptionFor()
to acquire a reservation.
- PreemptorImpl keeps track of found preemption slots in PreemptionSlotCache, fires an async
slot search request and replies back with empty result.
- A search is finished and a slot (if found) is added into internal slot cache.
- TaskScheduler calls into attemptPreemptionFor(), finds a preemption slot, validates a slot
is still valid and preempts tasks. A reservation for a slave is created.

This is still an intermediate milestone on the way to a fully independent background preemptor.

Benchmark refactoring will be addressed in a separate diff.


Diffs (updated)
-----

  src/main/java/org/apache/aurora/scheduler/async/OfferManager.java 7d2cb46aa86dd4c3c6d53848725eed1542307ebd

  src/main/java/org/apache/aurora/scheduler/async/preemptor/PreemptionSlotCache.java PRE-CREATION

  src/main/java/org/apache/aurora/scheduler/async/preemptor/PreemptionSlotFinder.java e748b42eaa8f54e0cf1a0a883da4aceff3d7a3b8

  src/main/java/org/apache/aurora/scheduler/async/preemptor/PreemptorImpl.java 1808b71546423dfe80ccb1902e8cebd545674a27

  src/main/java/org/apache/aurora/scheduler/async/preemptor/PreemptorMetrics.java 801a6d7f3cb0e9987e2029fd8c4c89015e8d3b65

  src/main/java/org/apache/aurora/scheduler/async/preemptor/PreemptorModule.java dbfebf99bc6028faf433a69db4308a239ff61290

  src/test/java/org/apache/aurora/scheduler/async/preemptor/PreemptionSlotCacheTest.java PRE-CREATION

  src/test/java/org/apache/aurora/scheduler/async/preemptor/PreemptorImplTest.java cfbc1a039262d92481ded2733d50ac51293a5b91

  src/test/java/org/apache/aurora/scheduler/async/preemptor/PreemptorSlotFinderTest.java e329358f70028f52a807cd987378cbc002af36a9


Diff: https://reviews.apache.org/r/32220/diff/


Testing
-------

./gradlew -Pq build


Thanks,

Maxim Khutornenko


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message