My Oracle Support Banner

Connection Leak In 12c OIM API - GetAccountsProvisionedToUser() Where PopulateAccountData Is True (Doc ID 2537106.1)

Last updated on APRIL 23, 2020

Applies to:

Identity Manager - Version 12.2.1.3.0 to 12.2.1.3.190109 [Release 12c]
Information in this document applies to any platform.

Symptoms


A custom job is being used(Update Process Forms) to process user data and update them to process form (UD tables) and then update to Targets, The job uses OIM API to update users. This job was running fine in OIM 11gR2PS3 (OIM 11.1.2.3.160719) but after upgrade to OIM 12.2.1.3.0, the custom job is using more connections and exhausting all connections available in data-source oimOperationsDB. There is a memory leak in underlying API as the custom code doesn’t have any connection open.

Testcase:

1. Create a test class TestOimClient which is calling provisioningService.getAccountsProvisionedToUser(id, true)
2. This class file can be run locally as it has main method
3. Run the class file with 12c jars (oimclinet.jar and OIMServer.jar)
4. Found that it is using lots of connections from oimOperationsDB  data-source pool
5. Run the class file with 11g jars
6. Found that it is using only one connection from oimOperationsDB data-source pool

This above mentioned test indicate that provisioningService.getAccountsProvisionedToUser() is causing a memory leak.

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.