[midPoint-git] [Evolveum/midpoint] 7eadd4: Use R/O option when resolving names for audit

mederly noreply at github.com
Fri Jan 17 12:33:32 CET 2025


  Branch: refs/heads/tmp/further-preprocessing-perf-improvements
  Home:   https://github.com/Evolveum/midpoint
  Commit: 7eadd46b13f7e8f243433eca727fcd2cc3765961
      https://github.com/Evolveum/midpoint/commit/7eadd46b13f7e8f243433eca727fcd2cc3765961
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ShadowAuditHelper.java
    M repo/system-init/src/main/java/com/evolveum/midpoint/init/AuditServiceProxy.java

  Log Message:
  -----------
  Use R/O option when resolving names for audit

Using read-only "get" option eliminates object cloning when retrieving
the object from the cache. Improves provisioning pre-processing
for new shadows (audited) by ~5%.

Temporary solution! It may slightly worse the performance when names
are resolved from real repo (not from cache). We should implement
something more advanced, like custom name resolver provided by the
repo.


  Commit: ed587f72b69098939ee22efa851f7244ee684395
      https://github.com/Evolveum/midpoint/commit/ed587f72b69098939ee22efa851f7244ee684395
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/classification/ResourceObjectClassifier.java
    M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/activity/run/StatisticsLogger.java

  Log Message:
  -----------
  Skip item logging code if not needed

There's no need to prepare item-level logging information if they're
not used.

This improves the performance of "no-op" import of already existing
shadows in "1s-200m-0t-0m-0a-10ku" scenario by ~3%.


  Commit: 3082dc4c556ba3282c620e3304c1f98a7f10571e
      https://github.com/Evolveum/midpoint/commit/3082dc4c556ba3282c620e3304c1f98a7f10571e
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ShadowAttribute.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ShadowReferenceAttribute.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ShadowSimpleAttribute.java
    M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowPostProcessor.java

  Log Message:
  -----------
  Skip some definition application if not needed

We can skip applying shadow/attribute definitions in some cases,
especially if there are no auxiliary classes involved.

This improves the performance of "no-op" import of already existing
shadows in "1s-200m-0t-0m-0a-10ku" scenario by ~30%.


Compare: https://github.com/Evolveum/midpoint/compare/7eadd46b13f7%5E...3082dc4c556b

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