[midPoint-git] [Evolveum/midpoint] 0fd40d: Stop fetching all shadows during reconciliation

mederly noreply at github.com
Tue Mar 30 11:24:25 CEST 2021


  Branch: refs/heads/master
  Home:   https://github.com/Evolveum/midpoint
  Commit: 0fd40db9b2a8735bede9109d6df654e91b0b05ed
      https://github.com/Evolveum/midpoint/commit/0fd40db9b2a8735bede9109d6df654e91b0b05ed
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2021-03-30 (Tue, 30 Mar 2021)

  Changed paths:
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/constants/SchemaConstants.java
    M infra/schema/src/main/resources/xml/ns/public/model/extension-3.xsd
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/sync/tasks/recon/ReconciliationTaskFirstPartExecution.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/sync/tasks/recon/ReconciliationTaskThirdPartExecution.java
    M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/sync/AbstractSynchronizationStoryTest.java
    M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/sync/TestReconTaskMultiNode.java
    M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/sync/TestReconTaskPartitioned.java
    M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/task/AbstractIterativeTaskPartExecution.java

  Log Message:
  -----------
  Stop fetching all shadows during reconciliation

The 3rd part of reconciliation (shadows reconciliation) fetches all
shadows that were not processed in the 2nd part (resource
reconciliation) in order to find all of them that no longer have their
counterparts on the resource.

To find them it filters shadows on fullSynchronizationTimestamp.
Unfortunately, it compares that property with the task last start
timestamp, which is invalid for partitioned tasks. The result was that
all the shadows were (re-)processed during 3rd recon part.

Therefore now we have introduced lastReconciliationStartTimestamp task
extension property that is set when the real resource reconciliation
starts. And the comparison uses this property value.

This is a temporary solution, though. We assume that continuing task
cleanup/improvements to be done in 4.4 will provide more elegant options
for the implementation of this functionality.

This resolves MID-6930.


  Commit: b8627ed512f9b8c8d40e87840473add7cc503dfc
      https://github.com/Evolveum/midpoint/commit/b8627ed512f9b8c8d40e87840473add7cc503dfc
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2021-03-30 (Tue, 30 Mar 2021)

  Changed paths:
    M pom.xml
    M provisioning/provisioning-impl/src/test/java/com/evolveum/midpoint/provisioning/impl/opendj/TestOpenDj.java
    M provisioning/ucf-impl-connid/src/test/resources/connector-ldap.xml

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master'


Compare: https://github.com/Evolveum/midpoint/compare/a9b0e6d9a5ab...b8627ed512f9


More information about the midPoint-svn mailing list