[midPoint-git] [Evolveum/midpoint] 98199d: Implement task workers auto-scaling
mederly
noreply at github.com
Thu Aug 19 13:27:05 CEST 2021
Branch: refs/heads/feature/auto-scaling
Home: https://github.com/Evolveum/midpoint
Commit: 98199d8cb365a1940e33fcd86111905601e5cc06
https://github.com/Evolveum/midpoint/commit/98199d8cb365a1940e33fcd86111905601e5cc06
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2021-08-19 (Thu, 19 Aug 2021)
Changed paths:
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/page/admin/server/PageNodes.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/result/OperationResult.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/statistics/ActivityBucketManagementStatisticsUtil.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/ObjectTypeUtil.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/task/ActivityItemProcessingStatisticsUtil.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/task/BucketingUtil.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/task/TaskTypeUtil.java
A infra/schema/src/main/java/com/evolveum/midpoint/schema/util/task/work/BucketingConstants.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/task/work/ObjectSetUtil.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/task/work/WorkDefinitionUtil.java
M infra/schema/src/main/resources/xml/ns/public/common/common-tasks-3.xsd
M infra/schema/src/test/resources/common/task-1.xml
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/security/NodeAuthenticationEvaluatorImpl.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/tasks/cluster/AutoScalingActivityHandler.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/tasks/cluster/AutoScalingExecutionSpecifics.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/tasks/cluster/AutoScalingWorkDefinition.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/tasks/cluster/ReconciliationLatch.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/tasks/scanner/FocusValidityScanWorkDefinition.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/tasks/simple/SimpleActivityHandler.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/TestValueMetadata.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/gensync/TestRoleEntitlement.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/misc/TestTracing.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/negative/TestBrokenResources.java
A model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/tasks/TestAutoScalingTask.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/tasks/TestLiveSyncTask.java
R model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/util/MockTaskHandler.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/util/MockTriggerHandler.java
M model/model-intest/src/test/resources/common/task-mock-jack.xml
M model/model-intest/src/test/resources/importer/import-task.json
M model/model-intest/src/test/resources/importer/import-task.xml
M model/model-intest/src/test/resources/importer/import-task.yaml
A model/model-intest/src/test/resources/tasks/auto-scaling/task-auto-scaling-skip-initial.xml
A model/model-intest/src/test/resources/tasks/auto-scaling/task-auto-scaling.xml
A model/model-intest/src/test/resources/tasks/auto-scaling/task-disabled-auto-scaling.xml
A model/model-intest/src/test/resources/tasks/auto-scaling/task-no-workers.xml
A model/model-intest/src/test/resources/tasks/auto-scaling/task-two-workers-per-node.xml
M model/model-intest/testng-integration-full.xml
M provisioning/provisioning-impl/src/test/java/com/evolveum/midpoint/provisioning/impl/csv/TestCsvBroken.java
M provisioning/provisioning-impl/src/test/java/com/evolveum/midpoint/provisioning/impl/dummy/AbstractBasicDummyTest.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/activity/TaskActivityManager.java
A repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/activity/handlers/NoOpActivityHandler.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/CommonTaskBeans.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/ItemProcessingGatekeeper.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/ItemProcessingRequest.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/IterativeActivityExecution.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/IterativeActivityExecutionSpecifics.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/ProcessingCoordinator.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/SearchBasedActivityExecution.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/StatisticsLogger.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/BucketOperation.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/BucketingManager.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/CompleteBucketOperation.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/GetBucketOperation.java
A repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/ReleaseAllBucketsOperation.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/ReleaseBucketOperation.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/segmentation/BucketContentFactoryGenerator.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/segmentation/ImplicitSegmentationResolver.java
A repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/segmentation/content/NumericIntervalBucketUtil.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/segmentation/content/NumericIntervalWorkBucketContentHandler.java
A repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/workers/ExpectedSetup.java
R repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/workers/ExpectedWorkersSetup.java
A repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/workers/TaskModificationConflictException.java
A repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/workers/WorkerCharacterization.java
R repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/workers/WorkerSpec.java
R repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/workers/WorkersManager.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/work/workers/WorkersReconciliation.java
R repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/workers/Temp.java
M repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/AbstractRepoCommonTest.java
M repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestActivities.java
R repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestBucketManagement.java
A repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestBucketingLive.java
A repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestBucketingStatic.java
R repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestPartitioning.java
R repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestWorkDistribution.java
A repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestWorkerTasks.java
R repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/TestWorkersManagement.java
M repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/handlers/composite/MockComponentActivityExecution.java
M repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/handlers/iterative/IterativeMockActivityExecutionSpecifics.java
M repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/handlers/iterative/IterativeMockWorkDefinition.java
M repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/handlers/search/SearchBasedMockActivityExecutionSpecifics.java
M repo/repo-common/src/test/java/com/evolveum/midpoint/repo/common/tasks/handlers/simple/SimpleMockActivityExecution.java
M repo/repo-common/src/test/resources/schema/extension.xsd
A repo/repo-common/src/test/resources/tasks/activities/task-115-no-op-legacy.xml
A repo/repo-common/src/test/resources/tasks/activities/task-135-no-op.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-100-single-worker-four-buckets.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-200-c.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-200-w.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-210-1.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-210-2.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-210-3.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-210-c.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-220-1.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-220-2.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-220-3.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-220-c.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-230-1.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-230-2.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-230-3.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-230-c.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-300-c.xml
A repo/repo-common/src/test/resources/tasks/bucketing-live/task-300-w.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-010.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-020.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-030.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-040.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-050.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-100.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-110.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-120.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-130.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-140.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-150.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-200-c.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-200-w.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-210-1.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-210-2.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-210-3.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-210-4.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-210-5.xml
A repo/repo-common/src/test/resources/tasks/bucketing-static/task-210-c.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-010.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-020.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-030.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-040.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-050.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-100.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-110.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-120.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-130.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-140.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-150.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-200-c.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-200-w.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-210-1.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-210-2.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-210-3.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-210-4.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-210-5.xml
R repo/repo-common/src/test/resources/tasks/buckets/task-210-c.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-200-c.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-200-w.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-210-1.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-210-2.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-210-3.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-210-c.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-220-1.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-220-2.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-220-3.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-220-c.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-230-1.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-230-2.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-230-3.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-230-c.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-300-c.xml
R repo/repo-common/src/test/resources/tasks/work-distribution/task-300-w.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/system-configuration.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/task-100-single-worker.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/task-110-four-workers.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/task-120-two-workers-per-node.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/task-130-no-op-bucketing-sanity.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/task-140-workers-update.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/task-150-workers-move.xml
A repo/repo-common/src/test/resources/tasks/worker-tasks/task-160-workers-add-delete.xml
M repo/repo-common/testng-integration.xml
M repo/repo-sql-impl-test/src/test/java/com/evolveum/midpoint/repo/sql/ModifyTest.java
M repo/repo-sql-impl-test/src/test/resources/modify/task.xml
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/AbstractIntegrationTest.java
A repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/ObjectCreator.java
A repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/ObjectCreatorBuilder.java
A repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/ActivityBucketManagementStatisticsAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/ActivityItemProcessingStatisticsAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/ActivityProgressAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/ActivityProgressInformationAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/ActivityStateAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/ExtensionAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/TaskAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/ValueMetadataValueAsserter.java
A repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/predicates/ExceptionBasedAssertionPredicate.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/prism/PrismContainerValueAsserter.java
M repo/task-api/src/main/java/com/evolveum/midpoint/task/api/Task.java
M repo/task-api/src/main/java/com/evolveum/midpoint/task/api/TaskConstants.java
M repo/task-api/src/main/java/com/evolveum/midpoint/task/api/TaskHandler.java
M repo/task-api/src/main/java/com/evolveum/midpoint/task/api/TaskManager.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/LocalNodeState.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/NodeIdComputer.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/TaskManagerConfiguration.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/TaskManagerQuartzImpl.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/UpAndDown.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/cluster/ClusterExecutionHelperImpl.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/cluster/ClusterManager.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/cluster/ClusterStatusInformationRetriever.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/cluster/NodeRegistrar.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/execution/LocalExecutionManager.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/execution/remote/JmxConnector.java
R repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/handlers/NoOpTaskHandler.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/nodes/NodeRetriever.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/run/TaskCycleExecutor.java
M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/tasks/TaskRetriever.java
M repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/AbstractTaskManagerTest.java
M repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/CleanupTest.java
R repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/MockCycleTaskHandler.java
R repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/MockLongTaskHandler.java
M repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/MockParallelTaskHandler.java
R repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/MockSingleTaskHandler.java
A repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/MockTaskHandler.java
R repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/MockWorkBucketsTaskHandler.java
R repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/TaskTestUtil.java
M repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/TestTaskManagerBasic.java
M repo/task-quartz-impl/src/test/resources/basic/task-allowed-not.xml
M repo/task-quartz-impl/src/test/resources/basic/task-allowed.xml
M repo/task-quartz-impl/src/test/resources/basic/task-cycle-loose-cron.xml
M repo/task-quartz-impl/src/test/resources/basic/task-cycle-loose.xml
M repo/task-quartz-impl/src/test/resources/basic/task-cycle-tight.xml
M repo/task-quartz-impl/src/test/resources/basic/task-dummy.xml
M repo/task-quartz-impl/src/test/resources/basic/task-for-extension-test.xml
M repo/task-quartz-impl/src/test/resources/basic/task-group-limit-concurrent.xml
M repo/task-quartz-impl/src/test/resources/basic/task-group-limit.xml
M repo/task-quartz-impl/src/test/resources/basic/task-long-running.xml
M repo/task-quartz-impl/src/test/resources/basic/task-non-existing-owner.xml
M repo/task-quartz-impl/src/test/resources/basic/task-run-on-demand.xml
M repo/task-quartz-impl/src/test/resources/basic/task-sec-group-limit-exp-1-ram-1.xml
M repo/task-quartz-impl/src/test/resources/basic/task-sec-group-limit-exp-1.xml
M repo/task-quartz-impl/src/test/resources/basic/task-sec-group-limit-ram-null.xml
M repo/task-quartz-impl/src/test/resources/basic/task-simple-waiting.xml
M repo/task-quartz-impl/src/test/resources/basic/task-single-run.xml
M repo/task-quartz-impl/src/test/resources/basic/task-suspended-tree-child-1-1.xml
M repo/task-quartz-impl/src/test/resources/basic/task-suspended-tree-child-1.xml
M repo/task-quartz-impl/src/test/resources/basic/task-suspended-tree-child-2.xml
M repo/task-quartz-impl/src/test/resources/basic/task-suspended-tree-root.xml
M repo/task-quartz-impl/src/test/resources/basic/task-to-delete.xml
M repo/task-quartz-impl/src/test/resources/basic/task-to-resume-and-suspend.xml
M repo/task-quartz-impl/src/test/resources/basic/task-to-suspend.xml
M repo/task-quartz-impl/src/test/resources/basic/task-tree-child-1.xml
M repo/task-quartz-impl/src/test/resources/basic/task-tree-child-2.xml
M repo/task-quartz-impl/src/test/resources/basic/task-tree-root.xml
M repo/task-quartz-impl/src/test/resources/basic/task-waiting-for-no-one.xml
M repo/task-quartz-impl/src/test/resources/basic/task-with-threads-to-suspend.xml
M repo/task-quartz-impl/src/test/resources/basic/task-with-threads.xml
M repo/task-quartz-impl/src/test/resources/basic/task-without-progress.xml
M repo/task-quartz-impl/src/test/resources/basic/tasks-for-cleanup.xml
M repo/task-quartz-impl/src/test/resources/miscellaneous/task-42-closed.xml
M repo/task-quartz-impl/src/test/resources/miscellaneous/task-42-runnable.xml
M repo/task-quartz-impl/src/test/resources/miscellaneous/task-42-suspended.xml
M repo/task-quartz-impl/src/test/resources/miscellaneous/task-42-waiting.xml
R repo/task-quartz-impl/src/test/resources/partitioning/task-100-master.xml
A repo/task-quartz-impl/src/test/resources/schema/extension.xsd
R repo/task-quartz-impl/src/test/resources/schema/whatever-extension.xsd
R repo/task-quartz-impl/src/test/resources/workers/task-100-c.xml
R repo/task-quartz-impl/src/test/resources/workers/task-110-c.xml
R repo/task-quartz-impl/src/test/resources/workers/task-200-r.xml
R repo/task-quartz-impl/src/test/resources/workers/task-210-r.xml
R repo/task-quartz-impl/src/test/resources/workers/task-220-r.xml
Log Message:
-----------
Implement task workers auto-scaling
This commit introduces auto-scaling activity that periodically
reconciles worker tasks in specified task trees. It does so when
cluster state changes as well as in specified time intervals.
Functional changes in workers reconciliation process:
1. It no longer closes superfluous workers - it suspends them instead,
allowing resuming them when needed.
2. When suspending the workers, any unprocessed buckets are returned
to the coordinator to process them immediately by other workers.
3. When in scavenging phase, non-scavenger workers are not created.
Only the scavengers are.
4. The whole reconciliation is now driven by node.operationalState (i.e.
from repo) instead of node.executionState (determined dynamically).
So in case of unstable clusters or transition situations the results
should be more predictable.
Main related data structure changes:
1. renamed node.operationalStatus to operationalState;
2. removed node.running property;
3. added task.autoScaling container;
4. added bucketing.scavenging property.
Main other (unrelated) changes:
1. Fixed default object type for focus validity scan activity.
2. Migrated NoOpTaskHandler to the activity framework (no-op activity).
3. Removed obsolete mock task handlers. In task-quartz-impl we should
use one of two remaining mock handlers. The repo-common has its own
mocks. And model-impl and higher modules can use no-op activity.
4. Implemented ObjectCreator for bulk objects creation in tests.
5. Cleaned up task manager tests.
More information about the midPoint-svn
mailing list