Symptoms
While working in the BSC, the Prepares and Approvers may face any issue while opening Certification details as the page keeps on loading
In the scheduler logs, the following warning messages can be seen:
WARN 2025-02-22 10:25:36,834 GMT [http-nio-10180-exec-32-Executor 1013] com.redwood.scheduler.app.balancesheetcertification.util.BSCAuthorizationContext - Failed to check if user [username]@[emaildomain] is authorized
JCS-122035: Unable to persist: JCS-XXXXX: Recovery failed: Bad value for type int : 2175247403:SELECT sopg.ObjectUniqueId FROM SubjectObjectPrivilegeGrant sopg, SubjectRoleGrantExpanded srge WHERE sopg.GranteeSubject = srge.GrantedSubject AND srge.GranteeSubject = ? AND sopg.ObjectUniqueId = ?:select sopg.A_REFUID from JCS_OBJPRIVGRANT0 sopg, JCS_ROLEGRANTEX0 srge where (sopg.F_GRANTEE = srge.F_GRANTED and srge.F_GRANTEE = ? and sopg.A_REFUID = ?)
Cause
When dealing with a large amount of data, the system assigned a high identifier number to the security information, which the BalanceSheetCertification (BSC) authorization mechanism is unable to handle.
This result in the templates appearing to load indefinitely as authorization couldn't be confirmed.
Workaround
No workaround is available.
Affected version
RunMyFinance 2025.1.0.1 or earlier
Resolution
This issue is fix in 2025.1.0.2 and onward
The issue has been backported to:
- 2024.2.0.6
- 2024.3.0.7
- 2024.4.0.5
Reference
ROSO-15597
Error
Scheduler.log
WARN 2025-03-26 10:36:10,912 GMT [http-nio-10180-exec-5-Executor 3079] com.redwood.scheduler.app.balancesheetcertification.util.BSCAuthorizationContext - Failed to check if user [username]@[emaildomain] is authorized
com.redwood.scheduler.api.exception.SchedulerAPIPersistenceException: JCS-122035: Unable to persist: JCS-XXXXX: @locale2@:(com.redwood.scheduler.exception.Class.persistence.api.PersistenceException$RecoveryFailedException 'Bad value for type int : 2175247403:SELECT sopg.ObjectUniqueId FROM SubjectObjectPrivilegeGrant sopg, SubjectRoleGrantExpanded srge WHERE sopg.GranteeSubject = srge.GrantedSubject AND srge.GranteeSubject = ? AND sopg.ObjectUniqueId = ?:select sopg.A_REFUID from JCS_OBJPRIVGRANT0 sopg, JCS_ROLEGRANTEX0 srge where (sopg.F_GRANTEE = srge.F_GRANTED and srge.F_GRANTEE = ? and sopg.A_REFUID = ?)')
at com.redwood.scheduler.model.SchedulerSessionImpl.executeQuery(SchedulerSessionImpl.java:812) ~[?:?]
at com.redwood.scheduler.app.balancesheetcertification.util.BSCAuthorizationContext.isAuthorized(BSCAuthorizationContext.java:142) ~[?:?]
at com.redwood.scheduler.app.balancesheetcertification.ui.model.BalancesheetCertificationModel.update(BalancesheetCertificationModel.java:289) ~[?:?]
at com.redwood.scheduler.solution.ui.library.model.generated.balancesheetcertification_balancesheetcertification.balancesheetcertificationmodel.ServerBalancesheetCertificationModel.invoke(ServerBalancesheetCertificationModel.java:1149) ~[?:?]
at com.redwood.scheduler.solution.ui.library.model.generated.balancesheetcertification_balancesheetcertification.balancesheetcertificationmodel.ServerCommandProcessFactory.processInvokeCommand(ServerCommandProcessFactory.java:512) ~[?:?]
at com.redwood.scheduler.solution.ui.library.model.generated.balancesheetcertification_balancesheetcertification.balancesheetcertificationmodel.ServerCommandProcessFactory.invoke(ServerCommandProcessFactory.java:61) ~[?:?]
at com.redwood.scheduler.solution.ui.library.model.generated.balancesheetcertification_balancesheetcertification.ServerModelRequestRuntime.invoke(ServerModelRequestRuntime.java:150) ~[?:?]
at com.redwood.scheduler.solution.ui.library.model.rt.balancesheetcertification_balancesheetcertification.ServerModelRequestProcessor.run(ServerModelRequestProcessor.java:218) ~[?:?]
at com.redwood.scheduler.solution.ui.library.model.rt.balancesheetcertification_balancesheetcertification.request.AbstractServerModelRequest.run(AbstractServerModelRequest.java:251) ~[?:?]
at com.redwood.scheduler.solution.ui.library.model.rt.balancesheetcertification_balancesheetcertification.request.AbstractServerModelRequest.run(AbstractServerModelRequest.java:92) ~[?:?]
at com.redwood.scheduler.custom.fca.balancesheet.controller.BalancesheetCertification.handleRequestWithoutActions(BalancesheetCertification.java:44) ~[?:?]
at com.redwood.scheduler.custom.extensionpoint.library.controllers.BasePageController.handleRequest(BasePageController.java:200) ~[?:?]
at com.redwood.scheduler.custom.extensionpoint.library.controllers.SessionController.handleRequest(SessionController.java:163) ~[?:?]
at com.redwood.scheduler.custom.Extensionpoint_Redwood_BalanceSheet_Certification.execute(Extensionpoint_Redwood_BalanceSheet_Certification.java:14) ~[?:?]
at com.redwood.scheduler.custom.Extensionpoint_Redwood_BalanceSheet_CertificationStub.jcsExecute(Extensionpoint_Redwood_BalanceSheet_CertificationStub.java:30) ~[?:?]
at jdk.internal.reflect.GeneratedMethodAccessor1258.invoke(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
at com.redwood.scheduler.script.java.impl.Java.evaluateJava(Java.java:217) ~[?:?]
at com.redwood.scheduler.script.java.impl.Java.lambda$evaluate$1(Java.java:107) ~[?:?]
at com.redwood.scheduler.script.java.impl.classloader.ThreadContextRunnable.call(ThreadContextRunnable.java:48) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: com.redwood.scheduler.persistence.api.PersistenceException$RecoveryFailedException: JCS-XXXXX: Recovery failed: Bad value for type int : 2175247403:SELECT sopg.ObjectUniqueId FROM SubjectObjectPrivilegeGrant sopg, SubjectRoleGrantExpanded srge WHERE sopg.GranteeSubject = srge.GrantedSubject AND srge.GranteeSubject = ? AND sopg.ObjectUniqueId = ?:select sopg.A_REFUID from JCS_OBJPRIVGRANT0 sopg, JCS_ROLEGRANTEX0 srge where (sopg.F_GRANTEE = srge.F_GRANTED and srge.F_GRANTEE = ? and sopg.A_REFUID = ?)
at com.redwood.scheduler.persistence.helper.PostgresGenericSQLExceptionWrapper.throwWrappedSQLExceptionIfRequired(PostgresGenericSQLExceptionWrapper.java:83) ~[?:?]
at com.redwood.scheduler.persistence.helper.RecoverySQLExceptionWrapper.wrapSQLException(RecoverySQLExceptionWrapper.java:49) ~[?:?]
at com.redwood.scheduler.persistence.impl.InnerPersistenceUnitOfWorkManager.execute(InnerPersistenceUnitOfWorkManager.java:42) ~[?:?]
at com.redwood.scheduler.persistence.impl.LowLevelPersistenceImpl.executeQuery(LowLevelPersistenceImpl.java:582) ~[?:?]
at com.redwood.scheduler.cluster.persistence.ClusteredLowLevelPersistence.executeQuery(ClusteredLowLevelPersistence.java:143) ~[?:?]
at com.redwood.scheduler.model.SchedulerSessionImpl.executeQuery(SchedulerSessionImpl.java:808) ~[?:?]
… 24 more
Caused by: com.redwood.scheduler.persistence.impl.LowLevelSQLException: Bad value for type int : 2175247403:SELECT sopg.ObjectUniqueId FROM SubjectObjectPrivilegeGrant sopg, SubjectRoleGrantExpanded srge WHERE sopg.GranteeSubject = srge.GrantedSubject AND srge.GranteeSubject = ? AND sopg.ObjectUniqueId = ?:select sopg.A_REFUID from JCS_OBJPRIVGRANT0 sopg, JCS_ROLEGRANTEX0 srge where (sopg.F_GRANTEE = srge.F_GRANTED and srge.F_GRANTEE = ? and sopg.A_REFUID = ?)
at com.redwood.scheduler.persistence.helper.PostgresGenericSQLExceptionWrapper.throwWrappedSQLExceptionIfRequired(PostgresGenericSQLExceptionWrapper.java:83) ~[?:?]
at com.redwood.scheduler.persistence.helper.RecoverySQLExceptionWrapper.wrapSQLException(RecoverySQLExceptionWrapper.java:49) ~[?:?]
at com.redwood.scheduler.persistence.impl.InnerPersistenceUnitOfWorkManager.execute(InnerPersistenceUnitOfWorkManager.java:42) ~[?:?]
at com.redwood.scheduler.persistence.impl.LowLevelPersistenceImpl.executeQuery(LowLevelPersistenceImpl.java:582) ~[?:?]
at com.redwood.scheduler.cluster.persistence.ClusteredLowLevelPersistence.executeQuery(ClusteredLowLevelPersistence.java:143) ~[?:?]
at com.redwood.scheduler.model.SchedulerSessionImpl.executeQuery(SchedulerSessionImpl.java:808) ~[?:?]
… 24 more
Comments
1 comment
This issue has been fix in 2025.1.0.2 and backported to:
Please sign in to leave a comment.