[midPoint-git] [Evolveum/midpoint] adf83e: Improve LiveSync error handling strategy
mederly
noreply at github.com
Mon Oct 26 12:34:19 CET 2020
Branch: refs/heads/support-4.2
Home: https://github.com/Evolveum/midpoint
Commit: adf83e60c5f25759b857ccc8383df16d65955c88
https://github.com/Evolveum/midpoint/commit/adf83e60c5f25759b857ccc8383df16d65955c88
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2020-10-24 (Sat, 24 Oct 2020)
Changed paths:
M icf-connectors/dummy-resource/src/main/java/com/evolveum/icf/dummy/resource/DummyResource.java
M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/xml/XmlTypeConverter.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/constants/SchemaConstants.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/ObjectTypeUtil.java
M infra/schema/src/main/resources/xml/ns/public/common/common-core-3.xsd
M infra/schema/src/main/resources/xml/ns/public/model/extension-3.xsd
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/trigger/ShadowReconcileTriggerHandler.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/AbstractEmptyModelIntegrationTest.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/sync/TestLiveSyncTaskMechanics.java
A model/model-intest/src/test/resources/sync/resource-dummy-errors-source-precise.xml
A model/model-intest/src/test/resources/sync/resource-dummy-errors-target.xml
A model/model-intest/src/test/resources/sync/role-errors-target.xml
A model/model-intest/src/test/resources/sync/task-errors-precise-ignore-partial-stop-on-fatal.xml
A model/model-intest/src/test/resources/sync/task-errors-precise-ignore.xml
A model/model-intest/src/test/resources/sync/task-errors-precise-retry-later-max-4.xml
A model/model-intest/src/test/resources/sync/task-errors-precise-retry-later-on-any.xml
A model/model-intest/src/test/resources/sync/task-errors-precise-stop-on-any.xml
M model/model-test/src/main/java/com/evolveum/midpoint/model/test/AbstractModelIntegrationTest.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningServiceImpl.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ResourceEventListenerImpl.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ResourceObjectConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/sync/AsyncUpdater.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/sync/ChangeProcessor.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/sync/ErrorHandlingStrategyExecutor.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/sync/LiveSynchronizer.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/sync/ProcessChangeRequest.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/sync/SynchronizationOperationResult.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/Change.java
R provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/ChangeHandler.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/ConnectorInstance.java
A provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/LiveSyncChangeListener.java
A provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/async/AsyncChangeListener.java
R provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/async/ChangeListener.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/connectors/AbstractManualConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/AsyncUpdateConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/ConnectorListeningHelper.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/TransformationalAsyncUpdateMessageListener.java
M provisioning/ucf-impl-connid/pom.xml
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/ConnectorInstanceConnIdImpl.java
R provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/CollectingChangeHandler.java
A provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/CollectingChangeListener.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfDummy.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfOpenDj.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/util/RepoCommonUtils.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/AbstractRoleAsserter.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/FocusAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/OrgAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/RoleAsserter.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/TriggerAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/UserAsserter.java
M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/prism/PrismObjectAsserter.java
Log Message:
-----------
Improve LiveSync error handling strategy
1. Implemented EXPERIMENTAL LiveSync error handling strategy.
It allows to specify when to stop, ignore, or "postpone" failed
objects; along with suspending the task after given # of errors.
This code should be eventually integrated with the thresholds
feature.
2. Implemented "shadow reconciliation" trigger handler that tries
to re-process failed shadows at specified time.
3. Change processor (for live sync, async updates, notify) now considers
IN_PROGRESS status as success. The reasoning behind this is that such
operations are done, and there is - in fact - nothing to retry from
the point of livesync or async update task. The delayed execution will
be done by consistency mechanism.
4. Change processor now does NOT apply partition error criticality
if no partition criticality is specified. (This used to reset all
errors to PARTIAL_ERROR in such cases.)
5. Cleaned up the terminology:
- renamed some Change and ProcessChangeRequest members
- renamed ChangeHandler to LiveSyncChangeListener (for the time being)
- renamed ChangeListener to AsyncChangeListener
Related to MID-6417.
Commit: c733bf4285fc5f1d342df9e807c08df893d05f72
https://github.com/Evolveum/midpoint/commit/c733bf4285fc5f1d342df9e807c08df893d05f72
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2020-10-24 (Sat, 24 Oct 2020)
Changed paths:
M NEWS
M README
M README.md
M RELEASE-NOTES
M config/initial-objects/000-system-configuration.xml
M config/initial-objects/030-role-superuser.xml
M config/initial-objects/040-role-enduser.xml
M config/initial-objects/041-role-approver.xml
M config/initial-objects/042-role-reviewer.xml
M config/initial-objects/043-role-delegator.xml
M config/initial-objects/050-user-administrator.xml
A config/initial-objects/060-archetype-report-dashboard.xml
A config/initial-objects/061-archetype-report-collection.xml
A config/initial-objects/080-report-audit.xml
A config/initial-objects/090-report-audit-jasper.xml
R config/initial-objects/090-report-audit.xml
M config/initial-objects/100-report-reconciliation.xml
M config/initial-objects/110-report-user-list.xml
M config/initial-objects/130-report-certification-definitions.xml
M config/initial-objects/140-report-certification-campaigns.xml
M config/initial-objects/150-report-certification-cases.xml
M config/initial-objects/160-report-certification-decisions.xml
M config/initial-objects/200-lookup-languages.xml
M config/initial-objects/210-lookup-locales.xml
A config/initial-objects/255-object-collection-certification-definition-all.xml
M config/initial-objects/260-object-collection-task-all.xml
M config/initial-objects/270-object-collection-task-active.xml
A config/initial-objects/284-object-collection-audit.xml
A config/initial-objects/285-object-collection-audit-24h.xml
A config/initial-objects/290-object-collection-audit-errors-24h.xml
R config/initial-objects/290-object-collection-audit-errors.xml
A config/initial-objects/300-object-collection-audit-modifications-24h.xml
R config/initial-objects/300-object-collection-audit-modifications.xml
M config/initial-objects/310-dashboard-admin.xml
M config/initial-objects/504-archetype-task-live-sync.xml
M config/initial-objects/507-archetype-task-report.xml
A config/initial-objects/600-origin-internal.xml
M custom/pom.xml
M dist/javadoc/pom.xml
M dist/midpoint-api/pom.xml
M dist/pom.xml
M gui/admin-gui/pom.xml
M gui/pom.xml
M icf-connectors/dummy-connector-fake/pom.xml
M icf-connectors/dummy-connector/pom.xml
M icf-connectors/dummy-resource/pom.xml
M icf-connectors/pom.xml
M infra/axiom/pom.xml
M infra/common/pom.xml
M infra/pom.xml
M infra/prism-api/pom.xml
M infra/prism-impl/pom.xml
M infra/prism-maven-plugin/pom.xml
M infra/schema-pure-jaxb/pom.xml
M infra/schema/pom.xml
M infra/test-util/pom.xml
M infra/util/pom.xml
M model/certification-api/pom.xml
M model/certification-impl/pom.xml
M model/model-api/pom.xml
M model/model-common/pom.xml
M model/model-impl/pom.xml
M model/model-intest/pom.xml
M model/model-test/pom.xml
M model/notifications-api/pom.xml
M model/notifications-impl/pom.xml
M model/pom.xml
M model/report-api/pom.xml
M model/report-impl/pom.xml
M model/rest-impl/pom.xml
M model/workflow-api/pom.xml
M model/workflow-impl/pom.xml
M pom.xml
M provisioning/pom.xml
M provisioning/provisioning-api/pom.xml
M provisioning/provisioning-impl/pom.xml
M provisioning/ucf-api/pom.xml
M provisioning/ucf-impl-builtin/pom.xml
M provisioning/ucf-impl-connid/pom.xml
M repo/audit-api/pom.xml
M repo/audit-impl/pom.xml
M repo/pom.xml
M repo/repo-api/pom.xml
M repo/repo-cache/pom.xml
M repo/repo-common/pom.xml
M repo/repo-sql-impl-test/pom.xml
M repo/repo-sql-impl/pom.xml
M repo/repo-test-util/pom.xml
M repo/security-api/pom.xml
M repo/security-enforcer-api/pom.xml
M repo/security-enforcer-impl/pom.xml
M repo/security-impl/pom.xml
M repo/system-init/pom.xml
M repo/task-api/pom.xml
M repo/task-quartz-impl/pom.xml
M testing/conntest/pom.xml
M testing/longtest/pom.xml
M testing/pom.xml
M testing/rest/pom.xml
M testing/schrodingertest/pom.xml
M testing/story/pom.xml
M tools/midpoint-war-layout/pom.xml
M tools/ninja/pom.xml
M tools/pom.xml
M tools/schema-dist-maven-plugin/pom.xml
M tools/schrodinger/pom.xml
M tools/test-ng/pom.xml
M tools/xjc-plugin/pom.xml
Log Message:
-----------
Merge branch 'support-4.2' into feature/mid-6417
Commit: eb39cfa0029950e9843f33fef0ba5a5932ae3648
https://github.com/Evolveum/midpoint/commit/eb39cfa0029950e9843f33fef0ba5a5932ae3648
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2020-10-26 (Mon, 26 Oct 2020)
Changed paths:
M testing/story/src/test/java/com/evolveum/midpoint/testing/story/ldap/TestLdapSyncMassive.java
Log Message:
-----------
Adapt TestLdapSyncMassive to error handling mods
Related to MID-6417.
Compare: https://github.com/Evolveum/midpoint/compare/393a9d135454...eb39cfa00299
More information about the midPoint-svn
mailing list