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

Backport OPENIDM-12680: Reconciliation stuck in ACTIVE_QUERY_ENTRIES (or other ACTIVE_ state) and cannot be cancelled

    XMLWordPrintable

Details

    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

        Issue Links

          Activity

            People

              matthias.grabiak Matthias Grabiak
              mark.offutt Mark Offutt [X] (Inactive)
              Michal Orlik Michal Orlik
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: