You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@aurora.apache.org by Bill Farner <wf...@apache.org> on 2014/01/09 23:40:49 UTC
Review Request 16767: Begin cleanup of StateManager interface by removing
state change via Query.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16767/
-----------------------------------------------------------
Review request for Aurora.
Bugs: AURORA-27
https://issues.apache.org/jira/browse/AURORA-27
Repository: aurora
Description
-------
State changes via a broad query is a rarely-used feature, and probably usually not a good idea. The query-based API was useful because it sometimes saves code at the call site, but the big downside is that it makes it more difficult for StateManager to perform course-correcting operations. The test case added to StateManagerImplTest illustrates a now-fixed regression that could contribute to state drift between the scheduler and the outside world.
Additionally, this API change is me working my way towards removing a bunch of the (hopefully-unnecessary) complexity that exists in StateManagerImpl and TaskStateMachine.
Diffs
-----
src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java 7e180ac1bb2cf2f7b07f25441614027e15b75c8b
src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java 96c76ba1b72853ae16399813bfac6c8db5aaf1a9
src/main/java/org/apache/aurora/scheduler/async/TaskTimeout.java 9f14a995e6e60098659542624b9ee951eea912ed
src/main/java/org/apache/aurora/scheduler/state/MaintenanceController.java 3dd2271004a26a597989574527459e887fba44e4
src/main/java/org/apache/aurora/scheduler/state/SchedulerCore.java b89d9905398feaaf7f1329409d8c27edc9f0d49a
src/main/java/org/apache/aurora/scheduler/state/SchedulerCoreImpl.java 1d450f2d2d8e747878b67bccbf3fd7d018a52d20
src/main/java/org/apache/aurora/scheduler/state/StateManager.java 045165da2fdec7f2d4b24402901752d1c6b3976a
src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java b6dd5379481423051b9243ad0dbfae7b057173f4
src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java c1a11bdb91c5e764864324d26248d1783af8048b
src/test/java/org/apache/aurora/scheduler/UserTaskLauncherTest.java bba1b722ae9c308e3767da2c396b86d05531c65a
src/test/java/org/apache/aurora/scheduler/async/TaskSchedulerTest.java 9698f283c04197039d22cd38220a1dda448bdcf7
src/test/java/org/apache/aurora/scheduler/async/TaskTimeoutTest.java 023905b6e6fe0a7ff095a2b37b9f73f9801a8123
src/test/java/org/apache/aurora/scheduler/state/BaseSchedulerCoreImplTest.java 720d0c86d8b112bf92196cbb81ece44476534654
src/test/java/org/apache/aurora/scheduler/state/MaintenanceControllerImplTest.java c0addd6670009b1ed924f891074b4971431a6378
src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java b17b983f66ce0ac1ef90b716a28813a505322b17
src/test/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterfaceTest.java 91c1c24448092e1b3454844ab8074ed030383594
Diff: https://reviews.apache.org/r/16767/diff/
Testing
-------
./gradlew build
Thanks,
Bill Farner
Re: Review Request 16767: Begin cleanup of StateManager interface by
removing state change via Query.
Posted by Bill Farner <wf...@apache.org>.
> On Jan. 10, 2014, 9:01 p.m., Maxim Khutornenko wrote:
> > src/main/java/org/apache/aurora/scheduler/state/StateManager.java, line 40
> > <https://reviews.apache.org/r/16767/diff/1/?file=419884#file419884line40>
> >
> > A bit of explanation of what "cas" stand for would not hurt here as it's not obvious from the description or implementation why it's used.
Thanks, done.
> On Jan. 10, 2014, 9:01 p.m., Maxim Khutornenko wrote:
> > src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java, line 80
> > <https://reviews.apache.org/r/16767/diff/1/?file=419885#file419885line80>
> >
> > Unfinished TODO comment?
Heh, yep. Thanks, fixed.
> On Jan. 10, 2014, 9:01 p.m., Maxim Khutornenko wrote:
> > src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java, line 239
> > <https://reviews.apache.org/r/16767/diff/1/?file=419885#file419885line239>
> >
> > Would task ever be null here?
The task is null if it doesn't exist in storage, i.e. if the master tells us that 'task-abc' is RUNNING.
- Bill
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16767/#review31538
-----------------------------------------------------------
On Jan. 9, 2014, 10:40 p.m., Bill Farner wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/16767/
> -----------------------------------------------------------
>
> (Updated Jan. 9, 2014, 10:40 p.m.)
>
>
> Review request for Aurora.
>
>
> Bugs: AURORA-27
> https://issues.apache.org/jira/browse/AURORA-27
>
>
> Repository: aurora
>
>
> Description
> -------
>
> State changes via a broad query is a rarely-used feature, and probably usually not a good idea. The query-based API was useful because it sometimes saves code at the call site, but the big downside is that it makes it more difficult for StateManager to perform course-correcting operations. The test case added to StateManagerImplTest illustrates a now-fixed regression that could contribute to state drift between the scheduler and the outside world.
>
> Additionally, this API change is me working my way towards removing a bunch of the (hopefully-unnecessary) complexity that exists in StateManagerImpl and TaskStateMachine.
>
>
> Diffs
> -----
>
> src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java 7e180ac1bb2cf2f7b07f25441614027e15b75c8b
> src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java 96c76ba1b72853ae16399813bfac6c8db5aaf1a9
> src/main/java/org/apache/aurora/scheduler/async/TaskTimeout.java 9f14a995e6e60098659542624b9ee951eea912ed
> src/main/java/org/apache/aurora/scheduler/state/MaintenanceController.java 3dd2271004a26a597989574527459e887fba44e4
> src/main/java/org/apache/aurora/scheduler/state/SchedulerCore.java b89d9905398feaaf7f1329409d8c27edc9f0d49a
> src/main/java/org/apache/aurora/scheduler/state/SchedulerCoreImpl.java 1d450f2d2d8e747878b67bccbf3fd7d018a52d20
> src/main/java/org/apache/aurora/scheduler/state/StateManager.java 045165da2fdec7f2d4b24402901752d1c6b3976a
> src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java b6dd5379481423051b9243ad0dbfae7b057173f4
> src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java c1a11bdb91c5e764864324d26248d1783af8048b
> src/test/java/org/apache/aurora/scheduler/UserTaskLauncherTest.java bba1b722ae9c308e3767da2c396b86d05531c65a
> src/test/java/org/apache/aurora/scheduler/async/TaskSchedulerTest.java 9698f283c04197039d22cd38220a1dda448bdcf7
> src/test/java/org/apache/aurora/scheduler/async/TaskTimeoutTest.java 023905b6e6fe0a7ff095a2b37b9f73f9801a8123
> src/test/java/org/apache/aurora/scheduler/state/BaseSchedulerCoreImplTest.java 720d0c86d8b112bf92196cbb81ece44476534654
> src/test/java/org/apache/aurora/scheduler/state/MaintenanceControllerImplTest.java c0addd6670009b1ed924f891074b4971431a6378
> src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java b17b983f66ce0ac1ef90b716a28813a505322b17
> src/test/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterfaceTest.java 91c1c24448092e1b3454844ab8074ed030383594
>
> Diff: https://reviews.apache.org/r/16767/diff/
>
>
> Testing
> -------
>
> ./gradlew build
>
>
> Thanks,
>
> Bill Farner
>
>
Re: Review Request 16767: Begin cleanup of StateManager interface by
removing state change via Query.
Posted by Maxim Khutornenko <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16767/#review31538
-----------------------------------------------------------
Ship it!
src/main/java/org/apache/aurora/scheduler/state/StateManager.java
<https://reviews.apache.org/r/16767/#comment60061>
A bit of explanation of what "cas" stand for would not hurt here as it's not obvious from the description or implementation why it's used.
src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java
<https://reviews.apache.org/r/16767/#comment60062>
Unfinished TODO comment?
src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java
<https://reviews.apache.org/r/16767/#comment60064>
Would task ever be null here?
src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java
<https://reviews.apache.org/r/16767/#comment60067>
Nice!
- Maxim Khutornenko
On Jan. 9, 2014, 10:40 p.m., Bill Farner wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/16767/
> -----------------------------------------------------------
>
> (Updated Jan. 9, 2014, 10:40 p.m.)
>
>
> Review request for Aurora.
>
>
> Bugs: AURORA-27
> https://issues.apache.org/jira/browse/AURORA-27
>
>
> Repository: aurora
>
>
> Description
> -------
>
> State changes via a broad query is a rarely-used feature, and probably usually not a good idea. The query-based API was useful because it sometimes saves code at the call site, but the big downside is that it makes it more difficult for StateManager to perform course-correcting operations. The test case added to StateManagerImplTest illustrates a now-fixed regression that could contribute to state drift between the scheduler and the outside world.
>
> Additionally, this API change is me working my way towards removing a bunch of the (hopefully-unnecessary) complexity that exists in StateManagerImpl and TaskStateMachine.
>
>
> Diffs
> -----
>
> src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java 7e180ac1bb2cf2f7b07f25441614027e15b75c8b
> src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java 96c76ba1b72853ae16399813bfac6c8db5aaf1a9
> src/main/java/org/apache/aurora/scheduler/async/TaskTimeout.java 9f14a995e6e60098659542624b9ee951eea912ed
> src/main/java/org/apache/aurora/scheduler/state/MaintenanceController.java 3dd2271004a26a597989574527459e887fba44e4
> src/main/java/org/apache/aurora/scheduler/state/SchedulerCore.java b89d9905398feaaf7f1329409d8c27edc9f0d49a
> src/main/java/org/apache/aurora/scheduler/state/SchedulerCoreImpl.java 1d450f2d2d8e747878b67bccbf3fd7d018a52d20
> src/main/java/org/apache/aurora/scheduler/state/StateManager.java 045165da2fdec7f2d4b24402901752d1c6b3976a
> src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java b6dd5379481423051b9243ad0dbfae7b057173f4
> src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java c1a11bdb91c5e764864324d26248d1783af8048b
> src/test/java/org/apache/aurora/scheduler/UserTaskLauncherTest.java bba1b722ae9c308e3767da2c396b86d05531c65a
> src/test/java/org/apache/aurora/scheduler/async/TaskSchedulerTest.java 9698f283c04197039d22cd38220a1dda448bdcf7
> src/test/java/org/apache/aurora/scheduler/async/TaskTimeoutTest.java 023905b6e6fe0a7ff095a2b37b9f73f9801a8123
> src/test/java/org/apache/aurora/scheduler/state/BaseSchedulerCoreImplTest.java 720d0c86d8b112bf92196cbb81ece44476534654
> src/test/java/org/apache/aurora/scheduler/state/MaintenanceControllerImplTest.java c0addd6670009b1ed924f891074b4971431a6378
> src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java b17b983f66ce0ac1ef90b716a28813a505322b17
> src/test/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterfaceTest.java 91c1c24448092e1b3454844ab8074ed030383594
>
> Diff: https://reviews.apache.org/r/16767/diff/
>
>
> Testing
> -------
>
> ./gradlew build
>
>
> Thanks,
>
> Bill Farner
>
>
Re: Review Request 16767: Begin cleanup of StateManager interface by
removing state change via Query.
Posted by Kevin Sweeney <ke...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16767/#review31779
-----------------------------------------------------------
Ship it!
Ship It!
- Kevin Sweeney
On Jan. 14, 2014, 11:30 a.m., Bill Farner wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/16767/
> -----------------------------------------------------------
>
> (Updated Jan. 14, 2014, 11:30 a.m.)
>
>
> Review request for Aurora, Kevin Sweeney and Maxim Khutornenko.
>
>
> Bugs: AURORA-27
> https://issues.apache.org/jira/browse/AURORA-27
>
>
> Repository: aurora
>
>
> Description
> -------
>
> State changes via a broad query is a rarely-used feature, and probably usually not a good idea. The query-based API was useful because it sometimes saves code at the call site, but the big downside is that it makes it more difficult for StateManager to perform course-correcting operations. The test case added to StateManagerImplTest illustrates a now-fixed regression that could contribute to state drift between the scheduler and the outside world.
>
> Additionally, this API change is me working my way towards removing a bunch of the (hopefully-unnecessary) complexity that exists in StateManagerImpl and TaskStateMachine.
>
>
> Diffs
> -----
>
> src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java 7e180ac1bb2cf2f7b07f25441614027e15b75c8b
> src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java 96c76ba1b72853ae16399813bfac6c8db5aaf1a9
> src/main/java/org/apache/aurora/scheduler/async/TaskTimeout.java 9f14a995e6e60098659542624b9ee951eea912ed
> src/main/java/org/apache/aurora/scheduler/state/MaintenanceController.java 3dd2271004a26a597989574527459e887fba44e4
> src/main/java/org/apache/aurora/scheduler/state/SchedulerCore.java b89d9905398feaaf7f1329409d8c27edc9f0d49a
> src/main/java/org/apache/aurora/scheduler/state/SchedulerCoreImpl.java 1d450f2d2d8e747878b67bccbf3fd7d018a52d20
> src/main/java/org/apache/aurora/scheduler/state/StateManager.java 045165da2fdec7f2d4b24402901752d1c6b3976a
> src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java b6dd5379481423051b9243ad0dbfae7b057173f4
> src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java c1a11bdb91c5e764864324d26248d1783af8048b
> src/test/java/org/apache/aurora/scheduler/UserTaskLauncherTest.java bba1b722ae9c308e3767da2c396b86d05531c65a
> src/test/java/org/apache/aurora/scheduler/async/TaskSchedulerTest.java 9698f283c04197039d22cd38220a1dda448bdcf7
> src/test/java/org/apache/aurora/scheduler/async/TaskTimeoutTest.java 023905b6e6fe0a7ff095a2b37b9f73f9801a8123
> src/test/java/org/apache/aurora/scheduler/state/BaseSchedulerCoreImplTest.java 720d0c86d8b112bf92196cbb81ece44476534654
> src/test/java/org/apache/aurora/scheduler/state/MaintenanceControllerImplTest.java c0addd6670009b1ed924f891074b4971431a6378
> src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java b17b983f66ce0ac1ef90b716a28813a505322b17
> src/test/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterfaceTest.java 91c1c24448092e1b3454844ab8074ed030383594
>
> Diff: https://reviews.apache.org/r/16767/diff/
>
>
> Testing
> -------
>
> ./gradlew build
>
>
> Thanks,
>
> Bill Farner
>
>
Re: Review Request 16767: Begin cleanup of StateManager interface by
removing state change via Query.
Posted by Bill Farner <wf...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16767/
-----------------------------------------------------------
(Updated Jan. 14, 2014, 9:51 p.m.)
Review request for Aurora, Kevin Sweeney and Maxim Khutornenko.
Changes
-------
Updated diff to reflect merge with latest master.
Bugs: AURORA-27
https://issues.apache.org/jira/browse/AURORA-27
Repository: aurora
Description
-------
State changes via a broad query is a rarely-used feature, and probably usually not a good idea. The query-based API was useful because it sometimes saves code at the call site, but the big downside is that it makes it more difficult for StateManager to perform course-correcting operations. The test case added to StateManagerImplTest illustrates a now-fixed regression that could contribute to state drift between the scheduler and the outside world.
Additionally, this API change is me working my way towards removing a bunch of the (hopefully-unnecessary) complexity that exists in StateManagerImpl and TaskStateMachine.
Diffs (updated)
-----
src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java 7e180ac1bb2cf2f7b07f25441614027e15b75c8b
src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java 96c76ba1b72853ae16399813bfac6c8db5aaf1a9
src/main/java/org/apache/aurora/scheduler/async/TaskThrottler.java 11a01ea17f6b2957539fa68ca731472c125fdcc0
src/main/java/org/apache/aurora/scheduler/async/TaskTimeout.java 9f14a995e6e60098659542624b9ee951eea912ed
src/main/java/org/apache/aurora/scheduler/state/MaintenanceController.java 3dd2271004a26a597989574527459e887fba44e4
src/main/java/org/apache/aurora/scheduler/state/SchedulerCore.java b89d9905398feaaf7f1329409d8c27edc9f0d49a
src/main/java/org/apache/aurora/scheduler/state/SchedulerCoreImpl.java 1d450f2d2d8e747878b67bccbf3fd7d018a52d20
src/main/java/org/apache/aurora/scheduler/state/StateManager.java 045165da2fdec7f2d4b24402901752d1c6b3976a
src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java 256f83055984ecfd67383527f60edf439960c623
src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java c1a11bdb91c5e764864324d26248d1783af8048b
src/test/java/org/apache/aurora/scheduler/UserTaskLauncherTest.java bba1b722ae9c308e3767da2c396b86d05531c65a
src/test/java/org/apache/aurora/scheduler/async/TaskSchedulerTest.java 4dfac036b094cb870f58b04d6e139531a4bcf2a8
src/test/java/org/apache/aurora/scheduler/async/TaskThrottlerTest.java 66bc2a0e5f3fa600c115effce73c2d726a2bdbb1
src/test/java/org/apache/aurora/scheduler/async/TaskTimeoutTest.java 023905b6e6fe0a7ff095a2b37b9f73f9801a8123
src/test/java/org/apache/aurora/scheduler/state/BaseSchedulerCoreImplTest.java cc929f8dc5bfe5f6eb713a95abc982731e4b669e
src/test/java/org/apache/aurora/scheduler/state/MaintenanceControllerImplTest.java c0addd6670009b1ed924f891074b4971431a6378
src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java 74ec74fc562db874362741d4a9092817c14ce1af
src/test/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterfaceTest.java 91c1c24448092e1b3454844ab8074ed030383594
Diff: https://reviews.apache.org/r/16767/diff/
Testing
-------
./gradlew build
Thanks,
Bill Farner
Re: Review Request 16767: Begin cleanup of StateManager interface by
removing state change via Query.
Posted by Bill Farner <wf...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16767/
-----------------------------------------------------------
(Updated Jan. 14, 2014, 7:30 p.m.)
Review request for Aurora, Kevin Sweeney and Maxim Khutornenko.
Changes
-------
Realized i neglected to add people to this review. +kevin, maxim.
Bugs: AURORA-27
https://issues.apache.org/jira/browse/AURORA-27
Repository: aurora
Description
-------
State changes via a broad query is a rarely-used feature, and probably usually not a good idea. The query-based API was useful because it sometimes saves code at the call site, but the big downside is that it makes it more difficult for StateManager to perform course-correcting operations. The test case added to StateManagerImplTest illustrates a now-fixed regression that could contribute to state drift between the scheduler and the outside world.
Additionally, this API change is me working my way towards removing a bunch of the (hopefully-unnecessary) complexity that exists in StateManagerImpl and TaskStateMachine.
Diffs
-----
src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java 7e180ac1bb2cf2f7b07f25441614027e15b75c8b
src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java 96c76ba1b72853ae16399813bfac6c8db5aaf1a9
src/main/java/org/apache/aurora/scheduler/async/TaskTimeout.java 9f14a995e6e60098659542624b9ee951eea912ed
src/main/java/org/apache/aurora/scheduler/state/MaintenanceController.java 3dd2271004a26a597989574527459e887fba44e4
src/main/java/org/apache/aurora/scheduler/state/SchedulerCore.java b89d9905398feaaf7f1329409d8c27edc9f0d49a
src/main/java/org/apache/aurora/scheduler/state/SchedulerCoreImpl.java 1d450f2d2d8e747878b67bccbf3fd7d018a52d20
src/main/java/org/apache/aurora/scheduler/state/StateManager.java 045165da2fdec7f2d4b24402901752d1c6b3976a
src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java b6dd5379481423051b9243ad0dbfae7b057173f4
src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java c1a11bdb91c5e764864324d26248d1783af8048b
src/test/java/org/apache/aurora/scheduler/UserTaskLauncherTest.java bba1b722ae9c308e3767da2c396b86d05531c65a
src/test/java/org/apache/aurora/scheduler/async/TaskSchedulerTest.java 9698f283c04197039d22cd38220a1dda448bdcf7
src/test/java/org/apache/aurora/scheduler/async/TaskTimeoutTest.java 023905b6e6fe0a7ff095a2b37b9f73f9801a8123
src/test/java/org/apache/aurora/scheduler/state/BaseSchedulerCoreImplTest.java 720d0c86d8b112bf92196cbb81ece44476534654
src/test/java/org/apache/aurora/scheduler/state/MaintenanceControllerImplTest.java c0addd6670009b1ed924f891074b4971431a6378
src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java b17b983f66ce0ac1ef90b716a28813a505322b17
src/test/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterfaceTest.java 91c1c24448092e1b3454844ab8074ed030383594
Diff: https://reviews.apache.org/r/16767/diff/
Testing
-------
./gradlew build
Thanks,
Bill Farner
Re: Review Request 16767: Begin cleanup of StateManager interface by
removing state change via Query.
Posted by Bill Farner <wf...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/16767/
-----------------------------------------------------------
(Updated Jan. 13, 2014, 11:35 p.m.)
Review request for Aurora.
Bugs: AURORA-27
https://issues.apache.org/jira/browse/AURORA-27
Repository: aurora
Description
-------
State changes via a broad query is a rarely-used feature, and probably usually not a good idea. The query-based API was useful because it sometimes saves code at the call site, but the big downside is that it makes it more difficult for StateManager to perform course-correcting operations. The test case added to StateManagerImplTest illustrates a now-fixed regression that could contribute to state drift between the scheduler and the outside world.
Additionally, this API change is me working my way towards removing a bunch of the (hopefully-unnecessary) complexity that exists in StateManagerImpl and TaskStateMachine.
Diffs (updated)
-----
src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java 7e180ac1bb2cf2f7b07f25441614027e15b75c8b
src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java 96c76ba1b72853ae16399813bfac6c8db5aaf1a9
src/main/java/org/apache/aurora/scheduler/async/TaskTimeout.java 9f14a995e6e60098659542624b9ee951eea912ed
src/main/java/org/apache/aurora/scheduler/state/MaintenanceController.java 3dd2271004a26a597989574527459e887fba44e4
src/main/java/org/apache/aurora/scheduler/state/SchedulerCore.java b89d9905398feaaf7f1329409d8c27edc9f0d49a
src/main/java/org/apache/aurora/scheduler/state/SchedulerCoreImpl.java 1d450f2d2d8e747878b67bccbf3fd7d018a52d20
src/main/java/org/apache/aurora/scheduler/state/StateManager.java 045165da2fdec7f2d4b24402901752d1c6b3976a
src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java b6dd5379481423051b9243ad0dbfae7b057173f4
src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java c1a11bdb91c5e764864324d26248d1783af8048b
src/test/java/org/apache/aurora/scheduler/UserTaskLauncherTest.java bba1b722ae9c308e3767da2c396b86d05531c65a
src/test/java/org/apache/aurora/scheduler/async/TaskSchedulerTest.java 9698f283c04197039d22cd38220a1dda448bdcf7
src/test/java/org/apache/aurora/scheduler/async/TaskTimeoutTest.java 023905b6e6fe0a7ff095a2b37b9f73f9801a8123
src/test/java/org/apache/aurora/scheduler/state/BaseSchedulerCoreImplTest.java 720d0c86d8b112bf92196cbb81ece44476534654
src/test/java/org/apache/aurora/scheduler/state/MaintenanceControllerImplTest.java c0addd6670009b1ed924f891074b4971431a6378
src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java b17b983f66ce0ac1ef90b716a28813a505322b17
src/test/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterfaceTest.java 91c1c24448092e1b3454844ab8074ed030383594
Diff: https://reviews.apache.org/r/16767/diff/
Testing
-------
./gradlew build
Thanks,
Bill Farner