- RSA Governance & Lifecycle 8.0 P04
Any Change Request triggered by the Joiner Leave Mover Rule is getting rejected. The associated Workflow is also getting canceled. The the below error indicates that the object being saved contains a reference to another object that Hibernate is treating as a new (unsaved) instance. In the aveksaServer.log:
04/04/2025 05:09:14.294 ERROR (CR-Creation-8) [org.hibernate.internal.SessionImpl] HHH000346: Error during managed flush [object references an unsaved transient instance - save the transient instance before flushing: com.aveksa.server.core.cr.ChangeRequestItemDependency]
04/04/2025 05:09:14.296 ERROR (CR-Creation-8) [com.aveksa.server.core.concurrent.ConcurrentUtils] Task encountered an error.
com.aveksa.server.core.AdminServiceException: com.aveksa.server.db.PersistenceException: org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: com.aveksa.server.core.cr.ChangeRequestItemDependency
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.createChangeRequest(ChangeRequestCreationHandler.java:340) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.createChangeRequests(ChangeRequestCreationHandler.java:222) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.createChangeRequests(ChangeRequestCreationHandler.java:109) ~[server.jar:?]
at com.aveksa.server.core.cr.concurrent.CRCreationTask.call(CRCreationTask.java:39) ~[server.jar:?]
at com.aveksa.server.core.cr.concurrent.CRCreationTask.call(CRCreationTask.java:19) ~[server.jar:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:277) ~[?:1.8.0]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160) ~[?:1.8.0]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:1.8.0]
at java.lang.Thread.run(Thread.java:825) ~[?:2.9 (08-17-2023)]
Caused by: com.aveksa.server.db.PersistenceException: org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: com.aveksa.server.core.cr.ChangeRequestItemDependency
at com.aveksa.server.db.persistence.PersistenceServiceProvider.commitTransaction(PersistenceServiceProvider.java:2478) ~[server.jar:?]
at com.aveksa.server.db.persistence.PersistenceServiceProvider.commitTransaction(PersistenceServiceProvider.java:2436) ~[server.jar:?]
at com.aveksa.server.db.PersistenceManager.commitTransaction(PersistenceManager.java:359) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.persistChangeRequestWithCommits(ChangeRequestCreationHandler.java:551) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.persistChangeRequest(ChangeRequestCreationHandler.java:381) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.createChangeRequest(ChangeRequestCreationHandler.java:290) ~[server.jar:?]
... 8 more
Caused by: org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: com.aveksa.server.core.cr.ChangeRequestItemDependency
at org.hibernate.engine.internal.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:279) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.type.EntityType.getIdentifier(EntityType.java:462) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.type.ManyToOneType.nullSafeSet(ManyToOneType.java:144) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.persister.collection.AbstractCollectionPersister.writeElement(AbstractCollectionPersister.java:894) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.persister.collection.AbstractCollectionPersister.recreate(AbstractCollectionPersister.java:1313) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.persister.collection.OneToManyPersister.recreate(OneToManyPersister.java:186) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.action.internal.CollectionRecreateAction.execute(CollectionRecreateAction.java:50) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:582) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:456) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:337) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1282) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:465) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:2963) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2339) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:485) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.beforeCompletionCallback(JdbcResourceLocalTransactionCoordinatorImpl.java:147) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$100(JdbcResourceLocalTransactionCoordinatorImpl.java:38) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit(JdbcResourceLocalTransactionCoordinatorImpl.java:231) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at org.hibernate.engine.transaction.internal.TransactionImpl.commit(TransactionImpl.java:65) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
at com.aveksa.server.db.persistence.PersistenceServiceProvider.commitTransaction(PersistenceServiceProvider.java:2467) ~[server.jar:?]
at com.aveksa.server.db.persistence.PersistenceServiceProvider.commitTransaction(PersistenceServiceProvider.java:2436) ~[server.jar:?]
at com.aveksa.server.db.PersistenceManager.commitTransaction(PersistenceManager.java:359) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.persistChangeRequestWithCommits(ChangeRequestCreationHandler.java:551) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.persistChangeRequest(ChangeRequestCreationHandler.java:381) ~[server.jar:?]
at com.aveksa.server.core.cr.ChangeRequestCreationHandler.createChangeRequest(ChangeRequestCreationHandler.java:290) ~[server.jar:?]
... 8 more The Joiner Mover Leaver Rule is adding the entitlement to a terminated user. The Change Request items are in turn getting rejected in the initial fulfillment phase. As there is no need to proceed with fulfillment, the associated fulfillment workflows are transitioned to the Cancelled state instead of getting stuck at the starting node.
A feature has been introduced in RSA Governance & Lifecycle under the custom flag "EnableAddEntitlementToTerminatedUsers" to Reject the Change Request items for terminated users by default.
Enable the "EnableAddEntitlementToTerminatedUsers" custom flag from the UI. This will revert the application to the correct behavior and the Change Requests will be completed successfully moving forward.
Related Articles
Entitlement Relationships are getting rejected in MAEDCs in RSA Governance & Lifecycle 10Number of Views Group Entitlements are getting added to shared accounts in RSA Governance & Lifecycle 44Number of Views Approval items that are rejected by email and have multiple concurrent approvers may potentially be provisioned in RSA Ide… 68Number of Views Getting started with the RSA SecurID Access Cloud Authentication Service 663Number of Views RSA Identity Governance and Lifecycle version 6.9.1 review does not accept the password with hash special character # 19Number of Views
Trending Articles
How to manipulate imported RSA SecurID Software Token(s) on an iPhone or iPad device RSA Authentication Manager 8.9 Patches and Hotfixes Readme RSA MFA Agent 2.5 for Microsoft Windows Installation and Administration Guide "No decryption codes were found in the zip file" error when decrypting RSA SecurID tokens Download RSA SecurID Access Cloud User Event audit logs using Cloud Administration REST API CLU