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

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

    Details

    • Target Version/s:
    • Verified Version/s:
    • Story Points:
      5
    • Sprint:
      2019.8 - IDM
    • Support Ticket IDs:

      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

              • Assignee:
                cgdrake Chris Drake
                Reporter:
                tom.wood Tom Wood
                QA Assignee:
                Son Nguyen
              • Votes:
                0 Vote for this issue
                Watchers:
                12 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: