You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@aurora.apache.org by Kevin Sweeney <ke...@apache.org> on 2015/07/23 02:07:34 UTC
Review Request 36713: Make Storage.Work an interface instead of an
abstract class.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36713/
-----------------------------------------------------------
Review request for Aurora, Bill Farner and Zameer Manji.
Repository: aurora
Description
-------
Make `Storage.Work` and friends interfaces instead of abstract classes.
This allows you to pass lambdas and method references to calls to `storage.work`. The main ripple is that as interface methods, `apply` and `execute` must be public. This was done programmatically with a sed script.
Diffs
-----
src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java 5716f23e7a3e4179624c3dddc6e3350a7074b4d8
src/jmh/java/org/apache/aurora/benchmark/StatusUpdateBenchmark.java 3931d02810137c0b397a315323ef60c5fd2f191f
src/jmh/java/org/apache/aurora/benchmark/ThriftApiBenchmarks.java c3f8b251d80d86323e364c978e77b5615d1f9f65
src/jmh/java/org/apache/aurora/benchmark/UpdateStoreBenchmarks.java cc4274103a8b4577fcbbbceac6d38496bac0c5cd
src/main/java/org/apache/aurora/scheduler/SchedulerLifecycle.java 32751896b43e7b0e92b1b9166f7606ab816425ef
src/main/java/org/apache/aurora/scheduler/TaskStatusHandlerImpl.java ede8517ff2bf989bd091aca97e2a667c5c61d1f5
src/main/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJob.java a33bb8ba7e70fd4a9bc3ad0f6f8c6ae661e65367
src/main/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImpl.java 0081c5c95f8079a218078d62f47cf2d6f7a259c0
src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java 7c8a00809365b5d9f28acf9832147bbbdbbc2b48
src/main/java/org/apache/aurora/scheduler/pruning/TaskHistoryPruner.java ef88d98f621fc8a2320cadf66182e0dca8d2b97b
src/main/java/org/apache/aurora/scheduler/scheduling/TaskThrottler.java b86bd281082b37d415237009db0bdae7eb29a570
src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java 64aa10d15fb2caa8d5be08ed2b57cd2f6e7e1aa2
src/main/java/org/apache/aurora/scheduler/storage/Storage.java 21f6a642df48b66614e210be4a9a99d3cd823501
src/main/java/org/apache/aurora/scheduler/storage/backup/Recovery.java fb0dbaec0f4cbd1ad12b808d795299b736552c6b
src/main/java/org/apache/aurora/scheduler/storage/backup/TemporaryStorage.java d0156d330deb5d862fa54513fdbb6561d1c91548
src/main/java/org/apache/aurora/scheduler/storage/db/RowGarbageCollector.java f1916a874798fa14faf588a8def02618a6ede698
src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java 82be3670338bfd976cf4ea0d93632c93703da016
src/main/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImpl.java 64b5b9548506b25fecce5113341f25b35b0f0e47
src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java 22786dedd0db014f518eb5701a985559d189adad
src/main/java/org/apache/aurora/scheduler/updater/JobUpdateControllerImpl.java ff067013f9b634506dbd7cbd015f9e129831e72a
src/test/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJobTest.java 7894668854ff4fae68168719dce2790916c6b548
src/test/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImplTest.java b8d88c7e299aebaea5e6ed5ae91d70cc8461ed32
src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerImplTest.java 25d8da67a3f8fe3d8b385932743a3d34dec4d25e
src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerTest.java 52af3642eb64a8895a625539d7c5b29ac9d6aad4
src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java 262f6686ff4c4c4aa7e32ad026c65f813d15c8c5
src/test/java/org/apache/aurora/scheduler/stats/ResourceCounterTest.java ed834bce2f1502605a8ef83d2812eea184bcc0a9
src/test/java/org/apache/aurora/scheduler/storage/AbstractCronJobStoreTest.java c7329c93329811daa6341d6cd0e08de6d347671a
src/test/java/org/apache/aurora/scheduler/storage/AbstractTaskStoreTest.java 775bb71f94582020643c12fd19a15d0d6732c699
src/test/java/org/apache/aurora/scheduler/storage/StorageBackfillTest.java a76ae48fc63dfeff24c733507dd6bcac30ef2629
src/test/java/org/apache/aurora/scheduler/storage/db/DbAttributeStoreTest.java a7de023249dc2f84eee9798d02181f6c52414547
src/test/java/org/apache/aurora/scheduler/storage/db/DbStorageTest.java 15a95897aff0a414c0087140a09e12ee3d67ace7
src/test/java/org/apache/aurora/scheduler/storage/log/LogStorageTest.java eabce167191b77cb7f44055f1b0edfc74dfdcf5a
src/test/java/org/apache/aurora/scheduler/storage/mem/InMemTaskStoreTest.java 77efffb3a89d8ae54e7e0e4879c5dda2a6d9b4c8
src/test/java/org/apache/aurora/scheduler/storage/mem/StorageTransactionTest.java 4ae194c4f86b609729cfdfdaeda369733efae0b2
src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java f5e1dd0ad205bd6e87b660cc7849a0bd92c787a7
Diff: https://reviews.apache.org/r/36713/diff/
Testing
-------
./gradlew -Pq build
Thanks,
Kevin Sweeney
Re: Review Request 36713: Make Storage.Work an interface instead of an
abstract class.
Posted by Kevin Sweeney <ke...@apache.org>.
> On July 22, 2015, 5:52 p.m., Zameer Manji wrote:
> > src/main/java/org/apache/aurora/scheduler/storage/Storage.java, line 136
> > <https://reviews.apache.org/r/36713/diff/1/?file=1019274#file1019274line136>
> >
> > Unsure if making this non final is desired.
It's a limitation of interfaces due to backwards-compatibility - they can't impose restrictions on their implementers. In practice I don't think this is likely to be a problem as writing out `Void apply` is ugly and should trigger a code smell warning.
- Kevin
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36713/#review92694
-----------------------------------------------------------
On July 22, 2015, 5:07 p.m., Kevin Sweeney wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/36713/
> -----------------------------------------------------------
>
> (Updated July 22, 2015, 5:07 p.m.)
>
>
> Review request for Aurora, Bill Farner and Zameer Manji.
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Make `Storage.Work` and friends interfaces instead of abstract classes.
>
> This allows you to pass lambdas and method references to calls to `storage.work`. The main ripple is that as interface methods, `apply` and `execute` must be public. This was done programmatically with a sed script.
>
>
> Diffs
> -----
>
> src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java 5716f23e7a3e4179624c3dddc6e3350a7074b4d8
> src/jmh/java/org/apache/aurora/benchmark/StatusUpdateBenchmark.java 3931d02810137c0b397a315323ef60c5fd2f191f
> src/jmh/java/org/apache/aurora/benchmark/ThriftApiBenchmarks.java c3f8b251d80d86323e364c978e77b5615d1f9f65
> src/jmh/java/org/apache/aurora/benchmark/UpdateStoreBenchmarks.java cc4274103a8b4577fcbbbceac6d38496bac0c5cd
> src/main/java/org/apache/aurora/scheduler/SchedulerLifecycle.java 32751896b43e7b0e92b1b9166f7606ab816425ef
> src/main/java/org/apache/aurora/scheduler/TaskStatusHandlerImpl.java ede8517ff2bf989bd091aca97e2a667c5c61d1f5
> src/main/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJob.java a33bb8ba7e70fd4a9bc3ad0f6f8c6ae661e65367
> src/main/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImpl.java 0081c5c95f8079a218078d62f47cf2d6f7a259c0
> src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java 7c8a00809365b5d9f28acf9832147bbbdbbc2b48
> src/main/java/org/apache/aurora/scheduler/pruning/TaskHistoryPruner.java ef88d98f621fc8a2320cadf66182e0dca8d2b97b
> src/main/java/org/apache/aurora/scheduler/scheduling/TaskThrottler.java b86bd281082b37d415237009db0bdae7eb29a570
> src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java 64aa10d15fb2caa8d5be08ed2b57cd2f6e7e1aa2
> src/main/java/org/apache/aurora/scheduler/storage/Storage.java 21f6a642df48b66614e210be4a9a99d3cd823501
> src/main/java/org/apache/aurora/scheduler/storage/backup/Recovery.java fb0dbaec0f4cbd1ad12b808d795299b736552c6b
> src/main/java/org/apache/aurora/scheduler/storage/backup/TemporaryStorage.java d0156d330deb5d862fa54513fdbb6561d1c91548
> src/main/java/org/apache/aurora/scheduler/storage/db/RowGarbageCollector.java f1916a874798fa14faf588a8def02618a6ede698
> src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java 82be3670338bfd976cf4ea0d93632c93703da016
> src/main/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImpl.java 64b5b9548506b25fecce5113341f25b35b0f0e47
> src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java 22786dedd0db014f518eb5701a985559d189adad
> src/main/java/org/apache/aurora/scheduler/updater/JobUpdateControllerImpl.java ff067013f9b634506dbd7cbd015f9e129831e72a
> src/test/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJobTest.java 7894668854ff4fae68168719dce2790916c6b548
> src/test/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImplTest.java b8d88c7e299aebaea5e6ed5ae91d70cc8461ed32
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerImplTest.java 25d8da67a3f8fe3d8b385932743a3d34dec4d25e
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerTest.java 52af3642eb64a8895a625539d7c5b29ac9d6aad4
> src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java 262f6686ff4c4c4aa7e32ad026c65f813d15c8c5
> src/test/java/org/apache/aurora/scheduler/stats/ResourceCounterTest.java ed834bce2f1502605a8ef83d2812eea184bcc0a9
> src/test/java/org/apache/aurora/scheduler/storage/AbstractCronJobStoreTest.java c7329c93329811daa6341d6cd0e08de6d347671a
> src/test/java/org/apache/aurora/scheduler/storage/AbstractTaskStoreTest.java 775bb71f94582020643c12fd19a15d0d6732c699
> src/test/java/org/apache/aurora/scheduler/storage/StorageBackfillTest.java a76ae48fc63dfeff24c733507dd6bcac30ef2629
> src/test/java/org/apache/aurora/scheduler/storage/db/DbAttributeStoreTest.java a7de023249dc2f84eee9798d02181f6c52414547
> src/test/java/org/apache/aurora/scheduler/storage/db/DbStorageTest.java 15a95897aff0a414c0087140a09e12ee3d67ace7
> src/test/java/org/apache/aurora/scheduler/storage/log/LogStorageTest.java eabce167191b77cb7f44055f1b0edfc74dfdcf5a
> src/test/java/org/apache/aurora/scheduler/storage/mem/InMemTaskStoreTest.java 77efffb3a89d8ae54e7e0e4879c5dda2a6d9b4c8
> src/test/java/org/apache/aurora/scheduler/storage/mem/StorageTransactionTest.java 4ae194c4f86b609729cfdfdaeda369733efae0b2
> src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java f5e1dd0ad205bd6e87b660cc7849a0bd92c787a7
>
> Diff: https://reviews.apache.org/r/36713/diff/
>
>
> Testing
> -------
>
> ./gradlew -Pq build
>
>
> Thanks,
>
> Kevin Sweeney
>
>
Re: Review Request 36713: Make Storage.Work an interface instead of an
abstract class.
Posted by Zameer Manji <zm...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36713/#review92694
-----------------------------------------------------------
Ship it!
LGTM modulo concerns of making apply non-final. This smells like potential trouble in the future but I don't think the impact will be high.
src/main/java/org/apache/aurora/scheduler/storage/Storage.java (line 136)
<https://reviews.apache.org/r/36713/#comment146925>
Unsure if making this non final is desired.
- Zameer Manji
On July 22, 2015, 5:07 p.m., Kevin Sweeney wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/36713/
> -----------------------------------------------------------
>
> (Updated July 22, 2015, 5:07 p.m.)
>
>
> Review request for Aurora, Bill Farner and Zameer Manji.
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Make `Storage.Work` and friends interfaces instead of abstract classes.
>
> This allows you to pass lambdas and method references to calls to `storage.work`. The main ripple is that as interface methods, `apply` and `execute` must be public. This was done programmatically with a sed script.
>
>
> Diffs
> -----
>
> src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java 5716f23e7a3e4179624c3dddc6e3350a7074b4d8
> src/jmh/java/org/apache/aurora/benchmark/StatusUpdateBenchmark.java 3931d02810137c0b397a315323ef60c5fd2f191f
> src/jmh/java/org/apache/aurora/benchmark/ThriftApiBenchmarks.java c3f8b251d80d86323e364c978e77b5615d1f9f65
> src/jmh/java/org/apache/aurora/benchmark/UpdateStoreBenchmarks.java cc4274103a8b4577fcbbbceac6d38496bac0c5cd
> src/main/java/org/apache/aurora/scheduler/SchedulerLifecycle.java 32751896b43e7b0e92b1b9166f7606ab816425ef
> src/main/java/org/apache/aurora/scheduler/TaskStatusHandlerImpl.java ede8517ff2bf989bd091aca97e2a667c5c61d1f5
> src/main/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJob.java a33bb8ba7e70fd4a9bc3ad0f6f8c6ae661e65367
> src/main/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImpl.java 0081c5c95f8079a218078d62f47cf2d6f7a259c0
> src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java 7c8a00809365b5d9f28acf9832147bbbdbbc2b48
> src/main/java/org/apache/aurora/scheduler/pruning/TaskHistoryPruner.java ef88d98f621fc8a2320cadf66182e0dca8d2b97b
> src/main/java/org/apache/aurora/scheduler/scheduling/TaskThrottler.java b86bd281082b37d415237009db0bdae7eb29a570
> src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java 64aa10d15fb2caa8d5be08ed2b57cd2f6e7e1aa2
> src/main/java/org/apache/aurora/scheduler/storage/Storage.java 21f6a642df48b66614e210be4a9a99d3cd823501
> src/main/java/org/apache/aurora/scheduler/storage/backup/Recovery.java fb0dbaec0f4cbd1ad12b808d795299b736552c6b
> src/main/java/org/apache/aurora/scheduler/storage/backup/TemporaryStorage.java d0156d330deb5d862fa54513fdbb6561d1c91548
> src/main/java/org/apache/aurora/scheduler/storage/db/RowGarbageCollector.java f1916a874798fa14faf588a8def02618a6ede698
> src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java 82be3670338bfd976cf4ea0d93632c93703da016
> src/main/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImpl.java 64b5b9548506b25fecce5113341f25b35b0f0e47
> src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java 22786dedd0db014f518eb5701a985559d189adad
> src/main/java/org/apache/aurora/scheduler/updater/JobUpdateControllerImpl.java ff067013f9b634506dbd7cbd015f9e129831e72a
> src/test/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJobTest.java 7894668854ff4fae68168719dce2790916c6b548
> src/test/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImplTest.java b8d88c7e299aebaea5e6ed5ae91d70cc8461ed32
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerImplTest.java 25d8da67a3f8fe3d8b385932743a3d34dec4d25e
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerTest.java 52af3642eb64a8895a625539d7c5b29ac9d6aad4
> src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java 262f6686ff4c4c4aa7e32ad026c65f813d15c8c5
> src/test/java/org/apache/aurora/scheduler/stats/ResourceCounterTest.java ed834bce2f1502605a8ef83d2812eea184bcc0a9
> src/test/java/org/apache/aurora/scheduler/storage/AbstractCronJobStoreTest.java c7329c93329811daa6341d6cd0e08de6d347671a
> src/test/java/org/apache/aurora/scheduler/storage/AbstractTaskStoreTest.java 775bb71f94582020643c12fd19a15d0d6732c699
> src/test/java/org/apache/aurora/scheduler/storage/StorageBackfillTest.java a76ae48fc63dfeff24c733507dd6bcac30ef2629
> src/test/java/org/apache/aurora/scheduler/storage/db/DbAttributeStoreTest.java a7de023249dc2f84eee9798d02181f6c52414547
> src/test/java/org/apache/aurora/scheduler/storage/db/DbStorageTest.java 15a95897aff0a414c0087140a09e12ee3d67ace7
> src/test/java/org/apache/aurora/scheduler/storage/log/LogStorageTest.java eabce167191b77cb7f44055f1b0edfc74dfdcf5a
> src/test/java/org/apache/aurora/scheduler/storage/mem/InMemTaskStoreTest.java 77efffb3a89d8ae54e7e0e4879c5dda2a6d9b4c8
> src/test/java/org/apache/aurora/scheduler/storage/mem/StorageTransactionTest.java 4ae194c4f86b609729cfdfdaeda369733efae0b2
> src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java f5e1dd0ad205bd6e87b660cc7849a0bd92c787a7
>
> Diff: https://reviews.apache.org/r/36713/diff/
>
>
> Testing
> -------
>
> ./gradlew -Pq build
>
>
> Thanks,
>
> Kevin Sweeney
>
>
Re: Review Request 36713: Make Storage.Work an interface instead of an
abstract class.
Posted by Aurora ReviewBot <wf...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36713/#review92693
-----------------------------------------------------------
Ship it!
Master (38c2e76) is green with this patch.
./build-support/jenkins/build.sh
I will refresh this build result if you post a review containing "@ReviewBot retry"
- Aurora ReviewBot
On July 23, 2015, 12:07 a.m., Kevin Sweeney wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/36713/
> -----------------------------------------------------------
>
> (Updated July 23, 2015, 12:07 a.m.)
>
>
> Review request for Aurora, Bill Farner and Zameer Manji.
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Make `Storage.Work` and friends interfaces instead of abstract classes.
>
> This allows you to pass lambdas and method references to calls to `storage.work`. The main ripple is that as interface methods, `apply` and `execute` must be public. This was done programmatically with a sed script.
>
>
> Diffs
> -----
>
> src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java 5716f23e7a3e4179624c3dddc6e3350a7074b4d8
> src/jmh/java/org/apache/aurora/benchmark/StatusUpdateBenchmark.java 3931d02810137c0b397a315323ef60c5fd2f191f
> src/jmh/java/org/apache/aurora/benchmark/ThriftApiBenchmarks.java c3f8b251d80d86323e364c978e77b5615d1f9f65
> src/jmh/java/org/apache/aurora/benchmark/UpdateStoreBenchmarks.java cc4274103a8b4577fcbbbceac6d38496bac0c5cd
> src/main/java/org/apache/aurora/scheduler/SchedulerLifecycle.java 32751896b43e7b0e92b1b9166f7606ab816425ef
> src/main/java/org/apache/aurora/scheduler/TaskStatusHandlerImpl.java ede8517ff2bf989bd091aca97e2a667c5c61d1f5
> src/main/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJob.java a33bb8ba7e70fd4a9bc3ad0f6f8c6ae661e65367
> src/main/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImpl.java 0081c5c95f8079a218078d62f47cf2d6f7a259c0
> src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java 7c8a00809365b5d9f28acf9832147bbbdbbc2b48
> src/main/java/org/apache/aurora/scheduler/pruning/TaskHistoryPruner.java ef88d98f621fc8a2320cadf66182e0dca8d2b97b
> src/main/java/org/apache/aurora/scheduler/scheduling/TaskThrottler.java b86bd281082b37d415237009db0bdae7eb29a570
> src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java 64aa10d15fb2caa8d5be08ed2b57cd2f6e7e1aa2
> src/main/java/org/apache/aurora/scheduler/storage/Storage.java 21f6a642df48b66614e210be4a9a99d3cd823501
> src/main/java/org/apache/aurora/scheduler/storage/backup/Recovery.java fb0dbaec0f4cbd1ad12b808d795299b736552c6b
> src/main/java/org/apache/aurora/scheduler/storage/backup/TemporaryStorage.java d0156d330deb5d862fa54513fdbb6561d1c91548
> src/main/java/org/apache/aurora/scheduler/storage/db/RowGarbageCollector.java f1916a874798fa14faf588a8def02618a6ede698
> src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java 82be3670338bfd976cf4ea0d93632c93703da016
> src/main/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImpl.java 64b5b9548506b25fecce5113341f25b35b0f0e47
> src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java 22786dedd0db014f518eb5701a985559d189adad
> src/main/java/org/apache/aurora/scheduler/updater/JobUpdateControllerImpl.java ff067013f9b634506dbd7cbd015f9e129831e72a
> src/test/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJobTest.java 7894668854ff4fae68168719dce2790916c6b548
> src/test/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImplTest.java b8d88c7e299aebaea5e6ed5ae91d70cc8461ed32
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerImplTest.java 25d8da67a3f8fe3d8b385932743a3d34dec4d25e
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerTest.java 52af3642eb64a8895a625539d7c5b29ac9d6aad4
> src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java 262f6686ff4c4c4aa7e32ad026c65f813d15c8c5
> src/test/java/org/apache/aurora/scheduler/stats/ResourceCounterTest.java ed834bce2f1502605a8ef83d2812eea184bcc0a9
> src/test/java/org/apache/aurora/scheduler/storage/AbstractCronJobStoreTest.java c7329c93329811daa6341d6cd0e08de6d347671a
> src/test/java/org/apache/aurora/scheduler/storage/AbstractTaskStoreTest.java 775bb71f94582020643c12fd19a15d0d6732c699
> src/test/java/org/apache/aurora/scheduler/storage/StorageBackfillTest.java a76ae48fc63dfeff24c733507dd6bcac30ef2629
> src/test/java/org/apache/aurora/scheduler/storage/db/DbAttributeStoreTest.java a7de023249dc2f84eee9798d02181f6c52414547
> src/test/java/org/apache/aurora/scheduler/storage/db/DbStorageTest.java 15a95897aff0a414c0087140a09e12ee3d67ace7
> src/test/java/org/apache/aurora/scheduler/storage/log/LogStorageTest.java eabce167191b77cb7f44055f1b0edfc74dfdcf5a
> src/test/java/org/apache/aurora/scheduler/storage/mem/InMemTaskStoreTest.java 77efffb3a89d8ae54e7e0e4879c5dda2a6d9b4c8
> src/test/java/org/apache/aurora/scheduler/storage/mem/StorageTransactionTest.java 4ae194c4f86b609729cfdfdaeda369733efae0b2
> src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java f5e1dd0ad205bd6e87b660cc7849a0bd92c787a7
>
> Diff: https://reviews.apache.org/r/36713/diff/
>
>
> Testing
> -------
>
> ./gradlew -Pq build
>
>
> Thanks,
>
> Kevin Sweeney
>
>
Re: Review Request 36713: Make Storage.Work an interface instead of an
abstract class.
Posted by Bill Farner <wf...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36713/#review92715
-----------------------------------------------------------
Ship it!
Nice!
- Bill Farner
On July 23, 2015, 12:07 a.m., Kevin Sweeney wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/36713/
> -----------------------------------------------------------
>
> (Updated July 23, 2015, 12:07 a.m.)
>
>
> Review request for Aurora, Bill Farner and Zameer Manji.
>
>
> Repository: aurora
>
>
> Description
> -------
>
> Make `Storage.Work` and friends interfaces instead of abstract classes.
>
> This allows you to pass lambdas and method references to calls to `storage.work`. The main ripple is that as interface methods, `apply` and `execute` must be public. This was done programmatically with a sed script.
>
>
> Diffs
> -----
>
> src/jmh/java/org/apache/aurora/benchmark/SchedulingBenchmarks.java 5716f23e7a3e4179624c3dddc6e3350a7074b4d8
> src/jmh/java/org/apache/aurora/benchmark/StatusUpdateBenchmark.java 3931d02810137c0b397a315323ef60c5fd2f191f
> src/jmh/java/org/apache/aurora/benchmark/ThriftApiBenchmarks.java c3f8b251d80d86323e364c978e77b5615d1f9f65
> src/jmh/java/org/apache/aurora/benchmark/UpdateStoreBenchmarks.java cc4274103a8b4577fcbbbceac6d38496bac0c5cd
> src/main/java/org/apache/aurora/scheduler/SchedulerLifecycle.java 32751896b43e7b0e92b1b9166f7606ab816425ef
> src/main/java/org/apache/aurora/scheduler/TaskStatusHandlerImpl.java ede8517ff2bf989bd091aca97e2a667c5c61d1f5
> src/main/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJob.java a33bb8ba7e70fd4a9bc3ad0f6f8c6ae661e65367
> src/main/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImpl.java 0081c5c95f8079a218078d62f47cf2d6f7a259c0
> src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java 7c8a00809365b5d9f28acf9832147bbbdbbc2b48
> src/main/java/org/apache/aurora/scheduler/pruning/TaskHistoryPruner.java ef88d98f621fc8a2320cadf66182e0dca8d2b97b
> src/main/java/org/apache/aurora/scheduler/scheduling/TaskThrottler.java b86bd281082b37d415237009db0bdae7eb29a570
> src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java 64aa10d15fb2caa8d5be08ed2b57cd2f6e7e1aa2
> src/main/java/org/apache/aurora/scheduler/storage/Storage.java 21f6a642df48b66614e210be4a9a99d3cd823501
> src/main/java/org/apache/aurora/scheduler/storage/backup/Recovery.java fb0dbaec0f4cbd1ad12b808d795299b736552c6b
> src/main/java/org/apache/aurora/scheduler/storage/backup/TemporaryStorage.java d0156d330deb5d862fa54513fdbb6561d1c91548
> src/main/java/org/apache/aurora/scheduler/storage/db/RowGarbageCollector.java f1916a874798fa14faf588a8def02618a6ede698
> src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java 82be3670338bfd976cf4ea0d93632c93703da016
> src/main/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImpl.java 64b5b9548506b25fecce5113341f25b35b0f0e47
> src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java 22786dedd0db014f518eb5701a985559d189adad
> src/main/java/org/apache/aurora/scheduler/updater/JobUpdateControllerImpl.java ff067013f9b634506dbd7cbd015f9e129831e72a
> src/test/java/org/apache/aurora/scheduler/cron/quartz/AuroraCronJobTest.java 7894668854ff4fae68168719dce2790916c6b548
> src/test/java/org/apache/aurora/scheduler/cron/quartz/CronJobManagerImplTest.java b8d88c7e299aebaea5e6ed5ae91d70cc8461ed32
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerImplTest.java 25d8da67a3f8fe3d8b385932743a3d34dec4d25e
> src/test/java/org/apache/aurora/scheduler/scheduling/TaskSchedulerTest.java 52af3642eb64a8895a625539d7c5b29ac9d6aad4
> src/test/java/org/apache/aurora/scheduler/state/StateManagerImplTest.java 262f6686ff4c4c4aa7e32ad026c65f813d15c8c5
> src/test/java/org/apache/aurora/scheduler/stats/ResourceCounterTest.java ed834bce2f1502605a8ef83d2812eea184bcc0a9
> src/test/java/org/apache/aurora/scheduler/storage/AbstractCronJobStoreTest.java c7329c93329811daa6341d6cd0e08de6d347671a
> src/test/java/org/apache/aurora/scheduler/storage/AbstractTaskStoreTest.java 775bb71f94582020643c12fd19a15d0d6732c699
> src/test/java/org/apache/aurora/scheduler/storage/StorageBackfillTest.java a76ae48fc63dfeff24c733507dd6bcac30ef2629
> src/test/java/org/apache/aurora/scheduler/storage/db/DbAttributeStoreTest.java a7de023249dc2f84eee9798d02181f6c52414547
> src/test/java/org/apache/aurora/scheduler/storage/db/DbStorageTest.java 15a95897aff0a414c0087140a09e12ee3d67ace7
> src/test/java/org/apache/aurora/scheduler/storage/log/LogStorageTest.java eabce167191b77cb7f44055f1b0edfc74dfdcf5a
> src/test/java/org/apache/aurora/scheduler/storage/mem/InMemTaskStoreTest.java 77efffb3a89d8ae54e7e0e4879c5dda2a6d9b4c8
> src/test/java/org/apache/aurora/scheduler/storage/mem/StorageTransactionTest.java 4ae194c4f86b609729cfdfdaeda369733efae0b2
> src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java f5e1dd0ad205bd6e87b660cc7849a0bd92c787a7
>
> Diff: https://reviews.apache.org/r/36713/diff/
>
>
> Testing
> -------
>
> ./gradlew -Pq build
>
>
> Thanks,
>
> Kevin Sweeney
>
>