[midPoint-git] [Evolveum/midpoint] a1458a: Stop loading ref. attributes if not needed

mederly noreply at github.com
Sat Mar 29 23:26:54 CET 2025


  Branch: refs/heads/master
  Home:   https://github.com/Evolveum/midpoint
  Commit: a1458a66255a6241a65b0ba181b1b7d09e943183
      https://github.com/Evolveum/midpoint/commit/a1458a66255a6241a65b0ba181b1b7d09e943183
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2025-03-29 (Sat, 29 Mar 2025)

  Changed paths:
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/GetOperationOptions.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningContext.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ReturnedShadowValidityChecker.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowGetOperation.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowPostProcessor.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowSearchLikeOperation.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedObjectConstruction.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/ShadowDeltaComputerAbsolute.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/util/ProvisioningUtil.java
    M provisioning/provisioning-impl/src/test/java/com/evolveum/midpoint/provisioning/impl/AbstractProvisioningIntegrationTest.java
    M provisioning/provisioning-impl/src/test/java/com/evolveum/midpoint/provisioning/impl/dummy/TestDummy.java

  Log Message:
  -----------
  Stop loading ref. attributes if not needed

Provisioning module now honors EXCLUDE retrieval option for
ShadowType.F_ASSOCIATIONS: when present, it skips processing of
reference attributes and associations.

The primary use of this option is to speed up listing accounts from the
repository. But the post-processing can be turned off also for
operations that go to the resource.

Notes:

1. The use of F_ASSOCIATIONS is not quite precise, because we skip
also reference attributes. However, we currently do not have a simple
way how to specify "avoid processing all reference attributes".

2. This commit also fixes a problem when searching for shadows with
this option (no associations) destroyed cached associations' data in
the repository, because midPoint did not ask for them, and then naively
updated cached shadow. This is now fixed.

3. Turning off associations processing for fetching "getObject" is
currently only partial: reference attributes are fetched from the
resource (as it was up to now), only the post-processing is skipped.
We should fix that eventually.

Resolves MID-10444.

Unrelated change:

- Short and immediately obvious GetOperationOptions#noFetch method
was created instead of the original createNoFetchCollection() one.



To unsubscribe from these emails, change your notification settings at https://github.com/Evolveum/midpoint/settings/notifications


More information about the midPoint-svn mailing list