Aggregation Out of Memory Error and Resolution

For the JDBC source if there is very big data for aggregation, there can be an out of memory error.

Possible solutions can be one of the following:

  • Use TYPE_FORWARD_ONLY ResultSet type.
  • Increase RAM of the Java heap size (memory) for Java virtual machine for the JDBC drivers that do not support the TYPE_FORWARD_ONLY ResultSet type .

For the JDBC drivers that support the TYPE_FORWARD_ONLY ResultSet type, it ensures the reading of data in forward direction only, which reduces the data caching and results in less memory.

For the JDBC drivers that support the forward ResultSet type - to add an entry to the application, use the REST API.

Note
For more information on SailPoint's REST APIs, refer to Best Practices: REST API Authentication and REST API - Update Source (Partial) in the SailPoint Developer Community.

Use the following attribute keys with their suggested values:

Attribute Keys

Values

resultSetFetchSize

1000

statementFetchSize

1000

resultSetType

TYPE_FORWARD_ONLY

All JDBC drivers do not support the TYPE_FORWARD_ONLY ResultSet type. In such cases, one of the options is to increase the RAM of the Java heap size (memory) for Java virtual machine. The steps are:

  1. Logon to the Virtual Appliance.
  2. Execute the command sudo su
  3. Access the file: vi /opt/sailpoint/ccg/bin/startup.sh.
  4. Update the java options to enable the axis logs. For example, update the new value as:

    JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx896m -Dsun.lang.ClassLoader.allowArraySyntax=true"

    to

    JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx<new_value>m -Dsun.lang.ClassLoader.allowArraySyntax=true"

  5. Save the file.
  6. Execute the command service ccg restart.
  7. Check if the Virtual Appliance is configured properly on Identity Security Cloud.
  8. Check if the test connection is working correctly.