[midPoint-git] [Evolveum/midpoint] abce8e: Implement basic task work state management

Pavol Mederly mederly at evolveum.com
Mon Mar 5 23:53:45 CET 2018


  Branch: refs/heads/feature/multinode-tasks
  Home:   https://github.com/Evolveum/midpoint
  Commit: abce8e3dafaba74c73207237215c93e2bcbab6d1
      https://github.com/Evolveum/midpoint/commit/abce8e3dafaba74c73207237215c93e2bcbab6d1
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2018-03-05 (Mon, 05 Mar 2018)

  Changed paths:
    A infra/schema/src/main/java/com/evolveum/midpoint/schema/util/TaskTypeUtil.java
    M infra/schema/src/main/resources/xml/ns/public/common/common-core-3.xsd
    M repo/repo-sql-impl-test/src/test/java/com/evolveum/midpoint/repo/sql/util/SimpleTaskAdapter.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/TaskManager.java
    M repo/task-api/src/main/java/com/evolveum/midpoint/task/api/TaskRunResult.java
    A repo/task-api/src/main/java/com/evolveum/midpoint/task/api/TaskWorkBucketProcessingResult.java
    A repo/task-api/src/main/java/com/evolveum/midpoint/task/api/WorkBucketAwareTaskHandler.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/TaskQuartzImpl.java
    M repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/execution/JobExecutor.java
    A repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/work/BaseWorkStateManagementStrategy.java
    A repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/work/WorkBucketUtil.java
    A repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/work/WorkStateManager.java
    A repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/work/strategy/NumericIntervalWorkStateManagementStrategy.java
    A repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/work/strategy/WorkStateManagementStrategy.java
    A repo/task-quartz-impl/src/main/java/com/evolveum/midpoint/task/quartzimpl/work/strategy/WorkStateManagementStrategyFactory.java
    A 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
    M repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/MockSingleTaskHandler.java
    M repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/TestQuartzTaskManagerContract.java
    A repo/task-quartz-impl/src/test/java/com/evolveum/midpoint/task/quartzimpl/TestWorkDistribution.java
    A repo/task-quartz-impl/src/test/resources/basic/owner.xml
    A repo/task-quartz-impl/src/test/resources/basic/owner2.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-001TaskToken.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-002OidPresence.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-003GetProgress.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-004TaskProperties.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-004aTaskBigProperty.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-004bTaskBigProperty.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-004cReferenceInExtension.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-005Single.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-006Cycle.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-007Extension.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-008MoreHandlers.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-009CycleLoose.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-010CycleCronLoose.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-011MoreHandlersAndSchedules.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-012Suspend.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-013ReleaseAndSuspendLooselyBound.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-014SuspendLongRunning.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-015DeleteTaskFromRepo.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-016WaitForSubtasks-child-1.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-016WaitForSubtasks-prerequisite-1.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-016WaitForSubtasks.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-017WaitForSubtasksEmpty.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-019FinishedHandler.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-020QueryByExecutionStatus.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-021DeleteTaskTree-child1.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-021DeleteTaskTree-child2.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-021DeleteTaskTree.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-022ExecuteRecurringOnDemand.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-100LightweightSubtasks.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-105LightweightSubtasksSuspension.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-108SecondaryGroupLimit-2.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-108SecondaryGroupLimit-3.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-108SecondaryGroupLimit.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-110GroupLimit-2.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-110GroupLimit.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-120NodeAllowed.xml
    A repo/task-quartz-impl/src/test/resources/basic/task-130NodeNotAllowed.xml
    A repo/task-quartz-impl/src/test/resources/basic/tasks-for-cleanup.xml
    A repo/task-quartz-impl/src/test/resources/common/user-administrator.xml
    M repo/task-quartz-impl/src/test/resources/ctx-task-test.xml
    R repo/task-quartz-impl/src/test/resources/repo/owner.xml
    R repo/task-quartz-impl/src/test/resources/repo/owner2.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-001TaskToken.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-002OidPresence.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-003GetProgress.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-004TaskProperties.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-004aTaskBigProperty.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-004bTaskBigProperty.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-004cReferenceInExtension.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-005Single.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-006Cycle.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-007Extension.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-008MoreHandlers.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-009CycleLoose.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-010CycleCronLoose.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-011MoreHandlersAndSchedules.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-012Suspend.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-013ReleaseAndSuspendLooselyBound.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-014SuspendLongRunning.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-015DeleteTaskFromRepo.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-016WaitForSubtasks-child-1.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-016WaitForSubtasks-prerequisite-1.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-016WaitForSubtasks.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-017WaitForSubtasksEmpty.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-019FinishedHandler.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-020QueryByExecutionStatus.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-021DeleteTaskTree-child1.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-021DeleteTaskTree-child2.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-021DeleteTaskTree.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-022ExecuteRecurringOnDemand.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-100LightweightSubtasks.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-105LightweightSubtasksSuspension.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-108SecondaryGroupLimit-2.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-108SecondaryGroupLimit-3.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-108SecondaryGroupLimit.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-110GroupLimit-2.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-110GroupLimit.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-120NodeAllowed.xml
    R repo/task-quartz-impl/src/test/resources/repo/task-130NodeNotAllowed.xml
    R repo/task-quartz-impl/src/test/resources/repo/tasks-for-cleanup.xml
    A repo/task-quartz-impl/src/test/resources/work/task-100-c.xml
    A repo/task-quartz-impl/src/test/resources/work/task-100-w.xml
    A repo/task-quartz-impl/src/test/resources/work/task-110-0.xml
    A repo/task-quartz-impl/src/test/resources/work/task-120-0.xml
    A repo/task-quartz-impl/src/test/resources/work/task-130-1.xml
    A repo/task-quartz-impl/src/test/resources/work/task-130-2.xml
    A repo/task-quartz-impl/src/test/resources/work/task-130-3.xml
    A repo/task-quartz-impl/src/test/resources/work/task-130-4.xml
    A repo/task-quartz-impl/src/test/resources/work/task-130-5.xml
    A repo/task-quartz-impl/src/test/resources/work/task-130-c.xml

  Log Message:
  -----------
  Implement basic task work state management

This is the lowest layer needed for multi-node tasks and stateful
suspend+resume feature. It keeps an eye on work buckets that have
to be done and/or distributed by a task.




More information about the midPoint-svn mailing list