Uploaded image for project: 'OpenIDM'
  1. OpenIDM
  2. OPENIDM-12680

Reconciliation stuck in ACTIVE_QUERY_ENTRIES (or other ACTIVE_ state) and cannot be cancelled

    XMLWordPrintable

Details

    • 5
    • 2019.8 - IDM

    Description

      When running some reconciliations with IDM 6.5.0, it is possible for the recon to be stuck in the ACTIVE_QUERY_ENTRIES stage. If a cancel REST request is issued for this reconId, there is no change to the status.

      While we haven't been able to identify all causes of this behaviour, there are reproduction steps for one possible method:

      1. Install IDM 6.5.0
      2. Modify the sync-with-csv sample to include a mapping from managed/user to the CSV file
      3. Start IDM
      4. Sync from CSV to managed/user
      5. Sync (once) from managed/user to CSV
      6. Rename the CSV file (e.g. csvConnectorData.ori)
      7. In the Mappings UI, spam click the 'Reconcile Now' button
      8. Check the state of the reconciliations:

      GET http://localhost:8080/openidm/recon
      
      {
          "_id": "",
          "reconciliations": [
      *snip*
              {
                  "_id": "c2b8e79e-cbfd-47b8-999b-4c4046630ecc-618",
                  "mapping": "managedUser_systemCsvfileAccounts",
                  "state": "ACTIVE",
                  "stage": "ACTIVE_QUERY_ENTRIES",
                  "stageDescription": "querying sets of entries to reconcile",
                  "progress": {
                      "source": {
                          "existing": {
                              "processed": 0,
                              "total": "2"
                          }
                      },
                      "target": {
                          "existing": {
                              "processed": 0,
                              "total": "?"
                          },
                          "created": 0
                      },
                      "links": {
                          "existing": {
                              "processed": 0,
                              "total": "?"
                          },
                          "created": 0
                      }
                  },
                  "situationSummary": {
                      "SOURCE_IGNORED": 0,
                      "FOUND_ALREADY_LINKED": 0,
                      "UNQUALIFIED": 0,
                      "ABSENT": 0,
                      "TARGET_IGNORED": 0,
                      "MISSING": 0,
                      "ALL_GONE": 0,
                      "UNASSIGNED": 0,
                      "AMBIGUOUS": 0,
                      "CONFIRMED": 0,
                      "LINK_ONLY": 0,
                      "SOURCE_MISSING": 0,
                      "FOUND": 0
                  },
                  "statusSummary": {
                      "SUCCESS": 0,
                      "FAILURE": 0
                  },
                  "durationSummary": {
                      "sourceQuery": {
                          "min": 1,
                          "max": 1,
                          "mean": 1,
                          "count": 1,
                          "sum": 1,
                          "stdDev": 0
                      },
                      "onReconScript": {
                          "min": 4,
                          "max": 4,
                          "mean": 4,
                          "count": 1,
                          "sum": 4,
                          "stdDev": 0
                      },
                      "auditLog": {
                          "min": 0,
                          "max": 0,
                          "mean": 0,
                          "count": 1,
                          "sum": 0,
                          "stdDev": 0
                      }
                  },
                  "parameters": {
                      "sourceQuery": {
                          "resourceName": "managed/user",
                          "queryId": "query-all-ids"
                      },
                      "targetQuery": {
                          "resourceName": "system/csvfile/account",
                          "queryId": "query-all-ids"
                      }
                  },
                  "started": "2019-02-26T10:15:40.433Z",
                  "ended": "",
                  "duration": 54823,
                  "sourceProcessedByNode": {}
              }
          ]
      }
      

      Attachments

        1. jstack.txt
          98 kB
        2. recon.state.txt
          244 kB
        3. repo recon.ldif
          770 kB

        Issue Links

          Activity

            People

              cgdrake Chris Drake
              tom.wood Tom Wood
              Son Nguyen Son Nguyen
              Votes:
              0 Vote for this issue
              Watchers:
              13 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: