Uploaded image for project: 'MidPoint'
  1. MidPoint
  2. MID-5672

Reconciliation task does not link unlinked accounts from non-default intent

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 4.0
    • 4.0
    • None
    • None
    • MID-101 training

    • v4.0devel-2141-gac99895

    Description

      1. CSV resource (CSV-1 from training) has two intents. "default" and "test"
      2. there are pre-existing accounts of both intents in the CSV resource
      3. users are in midPoint, and I'm trying to do a recon
      4. dry-run reconciliation with the following settings:

      • kind: account
      • intent: unset (intentionally)
      • oc: AccountObjectClass
        5. dry run recon will see the accounts of both intents, they are UNLINKED
        6. removing dry run setting and running the same task again
        7. the default intent accounts are linked, the "test" intent accounts are still UNLINKED

      When recon starts/stops, I see:

      2019-08-21 17:41:56,502 [] [midPointScheduler_Worker-2] INFO (com.evolveum.midpoint.model.impl.sync.ReconciliationTaskHandler): Start executing reconciliation of resource resource:1000
      0000-9999-9999-0000-a000ff000002(CSV-1 (Document Access)), reconciling object class LROCDef(MODEL: rOCD(ACCOUNT:default={.../resource/instance-3}AccountObjectClass)), stage: ALL, work 
      bucket: PCV(null):[PP({.../common/common-3}sequentialNumber):[PPV(Integer:1)], PP({.../common/common-3}state):[PPV(WorkBucketStateType:READY)]]
      2019-08-21 17:41:56,554 [] [http-nio-8080-exec-9] WARN (org.apache.wicket.Component): Markup id set on a component that renders its body only. Markup id: id1765, component id: pause.
      2019-08-21 17:41:56,554 [] [http-nio-8080-exec-9] WARN (org.apache.wicket.Component): Markup id set on a component that renders its body only. Markup id: id1766, component id: refreshN
      ow.
      2019-08-21 17:41:58,461 [] [midPointScheduler_Worker-2] INFO (com.evolveum.midpoint.model.impl.sync.ReconciliationTaskHandler): Finished resource part of resource:10000000-9999-9999-00
      00-a000ff000002(CSV-1 (Document Access)) reconciliation: Processed 18 account(s), got 0 error(s). Average time for one object: 100.166664 ms (wall clock time average: 107.666664 ms).
      2019-08-21 17:41:58,477 [] [midPointScheduler_Worker-2] INFO (com.evolveum.midpoint.model.impl.sync.ReconciliationTaskHandler): Done executing reconciliation of resource resource:10000
      000-9999-9999-0000-a000ff000002(CSV-1 (Document Access)), object class LROCDef(MODEL: rOCD(ACCOUNT:default={.../resource/instance-3}AccountObjectClass)), Etime: 1975 ms (un-ops: 20, re
      source: 1940, shadow: 14)
      

      which leads me to the "default" intent. Which I don't want.

      The task:

      <task xmlns="http://midpoint.evolveum.com/xml/ns/public/common/common-3" xmlns:c="http://midpoint.evolveum.com/xml/ns/public/common/common-3" xmlns:icfs="http://midpoint.evolveum.com/xml/ns/public/connector/icf-1/resource-schema-3" xmlns:org="http://midpoint.evolveum.com/xml/ns/public/common/org-3" xmlns:q="http://prism.evolveum.com/xml/ns/public/query-3" xmlns:ri="http://midpoint.evolveum.com/xml/ns/public/resource/instance-3" xmlns:t="http://prism.evolveum.com/xml/ns/public/types-3" oid="3597dddb-50fb-4079-b5b0-7d19bbd1c329" version="42">
          <name>CSV-1 Reconciliation</name>
          <extension xmlns:mext="http://midpoint.evolveum.com/xml/ns/public/model/extension-3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:c="http://midpoint.evolveum.com/xml/ns/public/common/common-3" xsi:type="c:ExtensionType">
              <mext:dryRun>false</mext:dryRun>
              <mext:objectclass>ri:AccountObjectClass</mext:objectclass>
              <mext:kind>account</mext:kind>
          </extension>
      ...
      

      So the intent is not set in the task.

      Logging from SynchronizationService:

      2019-08-21 17:57:25,722 [SYNCHRONIZATION_SERVICE] [midPointScheduler_Worker-7] TRACE (com.evolveum.midpoint.model.impl.sync.SynchronizeAccountResultHandler): Reconciliation considering object:
        shadow: (7eaffdb5-dd83-4123-ae69-f3cb84e879c2, v2, ShadowType)
            name: _x000090
            resourceRef: oid=10000000-9999-9999-0000-a000ff000002(ResourceType)[default]
            synchronizationSituation: UNLINKED
            synchronizationTimestamp: 2019-08-21T17:37:37.310+02:00
            fullSynchronizationTimestamp: 2019-08-21T17:28:50.939+02:00
            synchronizationSituationDescription: [ SyncDesc(UNLINKED,2019-08-21T17:37:37.310+02:00,http://midpoint.evolveum.com/xml/ns/public/provisioning/channels-3#reconciliation) ]
            objectClass: {...resource/instance-3}AccountObjectClass
            primaryIdentifierValue: _x000090
            kind: ACCOUNT
            intent: test
            exists: true
            attributes: 
                lname: Austenberg Test
                login: _x000090
                fname: Mel
            activation: 
                administrativeStatus: ENABLED
            credentials: 
                password: 
                    value: ProtectedStringType([encrypted data])
                    metadata: 
                        createTimestamp: 2019-08-21T17:28:50.932+02:00
                        creatorRef: oid=00000000-0000-0000-0000-000000000002(UserType)[default]
      2019-08-21 17:57:25,722 [SYNCHRONIZATION_SERVICE] [midPointScheduler_Worker-7] TRACE (com.evolveum.midpoint.model.impl.sync.SynchronizeAccountResultHandler): Reconciliation skipping shadow:7eaffdb5-dd83-4123-ae69-f3cb84e879c2(_x000090) because it does not match objectClass/kind/intent specified in LROCDef(MODEL: rOCD(ACCOUNT:default={.../resource/instance-3}AccountObjectClass))
      

      seems to confirm my suspiction.

      Attachments

        Issue Links

          Activity

            People

              vix Ivan Noris
              vix Ivan Noris
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: