# Troubleshooting

If you encounter any of the following issues or errors, SailPoint recommends that you follow the guidance provided below to resolve the error before contacting SailPoint Support.

For issues or errors that are not addressed in this connector guide, refer to the following resources for troubleshooting information:

- [SailPoint Identity Services Documentation](<https://documentation.sailpoint.com/saas/help/index.html>)
- [SailPoint Support Knowledge Base](<https://support.sailpoint.com/csm?id=kb_view2&amp;kb_id=05ff44289f011200550bf7b6077fcfa3>)
- [SailPoint Developer Community](<https://developer.sailpoint.com/>)

## User or Role Filter Error

The following error message displays:

```text
Exception during aggregation of Object Type account on Application OracleERP. Reason: Unable to create iterator sailpoint.connector.ConnectorException: { "Errors" : [ { "description" : "PER_IIP_209:Page Mode not supported when querying against database and OID attributes", "code" : "501" } ] }
```

**Resolution**: Update the filter query to use the Oracle-supported filter combinations with pagination support. For more information on pagination and filters, refer to the [Oracle SaaS](<https://docs.oracle.com/en/cloud/saas/index.html>) documentation. In the search box, type **Financials REST API manage collection**, this will provide documentation related to filters and pagination in the manage collection link.

## Delete account fails with an error message

The following error message displays:

```text
java.lang.UnsupportedOperationException: Delete operation is not supported. For details or troubleshooting, refer to the connector documentation.
```

**Resolution**: Set the `enableDeleteUserAccount` connector attribute to `true` on the source with the [Update Source (Partial)](<https://developer.sailpoint.com/docs/api/update-source-v-1/>) API:

```json
[
  {
    "op": "add",
    "path": "/connectorAttributes/enableDeleteUserAccount",
    "value": true
  }
]
```

## Error message appears for Test Connection, Aggregation or Provisioning operations

The following error message displays:

```text
Exception: sailpoint.connector.ConnectorException: [ ConnectorException ] [ Error details ] javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
```

**Resolution**: Update the openJDK version to 11.0.3 or later.

## An error message appears when assigning data access to user

The following error message displays:

```text
openconnector.InvalidRequestException: Role <Role Name> is not assigned to a user, cannot process data access: <Role Name>$<Security Context>$<Security context value>
```

**Resolution**: To assign the Data Access, ensure that the corresponding role is assigned to a user.

For example, to assign the **Accounts Payable ManagerBusiness unitAccount\_BU** user Data Access, you need to assign the **Accounts Payable Manager** role to it.

## Create/Modify operation fails with an error message when passing the personNumber in the provisioning plan

The operation fails with the following error message:

```text
Another user has changed the row with primary key oracle.jbo.Key[300000027193775 ].
```

OR

```text
Applying List binding LOV_PersonNumber with given set of values
```

**Resolution**: Add the following attribute using [REST API - Update Source (Partial)](<https://developer.sailpoint.com/docs/api/update-source-v-1/>) in SailPoint and then, try creating a user with `personNumber`.

- Key= `retryWaitTime` Value= `60000` in ms, default: 30000 ms
- Key=`maxRetryCount` Value=`3`, default: 3
- Key=`retryableErrors` Value=\[`error messages`\]

> [!NOTE]
>
> The default error messages are, `Applying List binding LOV_PersonNumber with given set of values` and `Another user has changed the row with primary key`. If you do not specify any other error message, the connector will use the default error messages and retry.

## Entitlement aggregation fails with error

The following error message displays:

```text
Reason: java.lang.RuntimeException: An error occurred while aggregating[ InvalidConfigurationException ][ Error details ] err_msg_oracle_erp_invalid_creds
```

**Resolution**: Please review if the password of the service user contains any special characters. If yes, reset the password without any special characters and retry entitlement aggregation.

## Create/Update operation fails with LOV\_PersonNumber error

**Issue**: The create/update operation fails with the following error message when the PersonNumber being passed in the provisioning plan has multiple work relationships.

```text
Applying List binding LOV_PersonNumber with given set of values leads to multiple matching rows for a row of type:UserAccount, key oracle.jbo.Key[ 300000020907599 null null null
```

**Resolution**: Add the following attribute using [REST API - Update Source (Partial)](<https://developer.sailpoint.com/docs/api/update-source-v-1/>), then try creating a user with the personNumber.

Key = `provisionPersonId` Value = `true`

`provisionPersonId` is an boolean attribute.

> [!NOTE]
>
> Ensure you pass the valid `personNumber` in the provisioning plan. You should not pass the existing assigned `personNumber` assigned to other accounts.

## Provisioning fails with record combination of values error

Account aggregation ad group aggregation fetch different data access. Account aggregation fetches the **description** of the security context, and group aggregation fetches the **value** of the security context. For example, group aggregation data access is fetched as `Citadel Asset Accountant$Asset book$IN CORP BOOK`. However, during account aggregation, the same access is fetched as `Citadel Asset Accountant$Asset book$CIT Corporate Asset Book IN`, which results in a provisioning error.

**Issue**: Provisioning fails with error `openconnector.ConnectorException: [ ConnectorException ] [ Error details ] A record with this combination of values already exists`.

**Resolution**: Make the SecurityContext **value** and SecurityContext **description** the same. For example, change the description of the Asset Book `IN CORP BOOK` from `CIT Corporate Asset Book IN` to `IN CORP BOOK`. Once the value and description are the same, try aggregation/provisioning again.
