failed to lazily initialize a collection of role: sailpoint.object.Rule.referencedRules, could not initialize proxy - no Session
Hi SailPoint Experts,
We are currently using SailPoint IIQ version 8.4.
Recently, without any changes being made to the production environment, several Account aggregation and refresh tasks have started failing unexpectedly.
The following tasks are failing:
Active Directory Aggregation
Azure AD Aggregation
Refresh Identity Cube – Lifecycle
Other Refresh tasks
Could you please advise where I should begin troubleshooting this issue?
Should I check the configuration, rules, or custom code within SailPoint IIQ?
If anyone has encountered a similar issue earlier, your guidance would be greatly appreciated.
Your prompt response will be highly appreciated.
Error Message:
failed to lazily initialize a collection of role: sailpoint.object.Rule.referencedRules, could not initialize proxy - no Session
failed to lazily initialize a collection of role: sailpoint.object.Rule.referencedRules, could not initialize proxy - no Session
failed to lazily initialize a collection of role: sailpoint.object.Rule.referencedRules, could not initialize proxy - no Session
failed to lazily initialize a collection of role: sailpoint.object.Rule.referencedRules, could not initialize proxy - no Session
failed to lazily initialize a collection of role: sailpoint.object.Rule.referencedRules, could not initialize proxy - no Session
failed to lazily initialize a collection of role: sailpoint.object.Rule.referencedRules, could not initialize proxy - no Session
If you are passing any identity and application object completely as arguments to any custom method. Modify it to pass the names and get the object from context inside the method.
If you are doing commitTransaction(), that may also invalidate some of the objects in reference.. For this you should create a sub context and then make the changes followed by commitTransaction().
If you are decache(), that also may cause the issue. Please change it to decache(object).
Please check your codebase for such cases and make the necessary adjustments.
Note: Found a fix?Help the community by marking the comment as solution. Feel free to react(,, etc.)with an emoji to show your appreciation or message me directly if your problem requires a deeper dive.
Getting same error in my UAT environment , passing a identity for single identity cube refresh but other aggregation tasks are also failing , how to resolve this issue?
@lsaipriya26 Try refresh the identity by launching the task via code. In one of the code, we were using Identitizer to refresh identity with process events, it was throwing the exception. So we changed it to launch the refresh task using TaskManager in the code and it worked fine without errors.
Note: Found a fix?Help the community by marking the comment as solution. Feel free to react(,, etc.)with an emoji to show your appreciation or message me directly if your problem requires a deeper dive.
This error happens because the referencedRules collection is being accessed after the database session has closed. To fix this, ensure you are not calling context.decache() or context.commitTransaction() before you are finished with the Rule object. A quick fix is to ‘force’ the load by calling rule.getReferencedRules().size() immediately after fetching the rule from the context.
Does this help you identify which rule or task might be causing the session to drop too early?