ASR fails to generate with an 'ORA-06502: PL/SQL: numeric or value error: character string buffer too small' error in RSA Identity Governance & Lifecycle
2 years ago
Originally Published: 2020-02-05
Article Number
000043736
Applies To
RSA Product Set: RSA Identity Governance & Lifecycle
RSA Version/Condition: 7.1.0, 7.1.1
 
Issue
An Aveksa Statistics Report (ASR) cannot be generated in RSA Identity Governance & Lifecycle .

The RSA Identity Governance & Lifecycle user interface (Admin > Diagnostics) shows all Statistics Reports with a status of Generating.
 
User-added image

The aveksaServer.log file ($AVEKSA_HOME/wildfly/standalone/log/aveksaServer.log) has the following errors:
09/20/2019 15:35:22.563 INFO  (SystemReport) [com.aveksa.server.db.persistence.PersistenceServiceProvider] 
executeCallableStatement giving up after hitting SQLException: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "AVUSER.SYSTEM_REPORT", line 235
ORA-06512: at line 1

09/20/2019 15:35:22.566 WARN  (SystemReport) [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] SQL Error: 6502, SQLState: 65000
09/20/2019 15:35:22.566 ERROR (SystemReport) [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] 
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "AVUSER.SYSTEM_REPORT", line 235
ORA-06512: at line 1

09/20/2019 15:35:22.563 INFO  (SystemReport) [com.aveksa.server.db.persistence.PersistenceServiceProvider] 
executeCallableStatement giving up after hitting SQLException: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "AVUSER.SYSTEM_REPORT", line 235
ORA-06512: at line 1

09/20/2019 15:35:22.567 WARN  (SystemReport) [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] SQL Error: 6502, SQLState: 65000
09/20/2019 15:35:22.567 ERROR (SystemReport) [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] 
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "AVUSER.SYSTEM_REPORT", line 235
ORA-06512: at line 1

09/20/2019 15:35:22.621 ERROR (SystemReport) [com.aveksa.server.system.SystemReport] 
ASR Params: [Lcom.aveksa.server.db.ProcedureParameter;@e657f17
com.aveksa.server.db.PersistenceException: java.sql.SQLException: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "AVUSER.SYSTEM_REPORT", line 235
ORA-06512: at line 1

	at com.aveksa.server.db.persistence.PersistenceServiceProvider.runStoredProcedure(PersistenceServiceProvider.java:1548)
	at com.aveksa.server.db.persistence.PersistenceServiceProvider.runStoredProcedure(PersistenceServiceProvider.java:1480)
	at com.aveksa.server.db.PersistenceManager.runStoredProcedure(PersistenceManager.java:245)
	at com.aveksa.server.system.SystemReport.backgroundGenerateReport(SystemReport.java:129)
	at com.aveksa.server.system.SystemReport$1.run(SystemReport.java:71)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.sql.SQLException: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "AVUSER.SYSTEM_REPORT", line 235
ORA-06512: at line 1

	at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:494)
	at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:446)
	at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1054)
	at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:623)
	at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252)
	at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612)
	at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:223)
	at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:56)
	at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:907)
	at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1119)
	at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3780)
	at oracle.jdbc.driver.T4CCallableStatement.executeInternal(T4CCallableStatement.java:1300)
	at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3887)
	at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4230)
	at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1079)
	at org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.execute(WrappedPreparedStatement.java:442)
	at com.aveksa.server.db.persistence.work.PersistenceServiceBaseWork.executeCallableStatement(PersistenceServiceBaseWork.java:36)
	at com.aveksa.server.db.persistence.work.StoredProcedureCallWork.execute(StoredProcedureCallWork.java:80)
	at org.hibernate.jdbc.WorkExecutor.executeWork(WorkExecutor.java:37)
	at org.hibernate.internal.SessionImpl$3.accept(SessionImpl.java:2134)
	at org.hibernate.internal.SessionImpl$3.accept(SessionImpl.java:2131)
	at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.coordinateWork(JdbcCoordinatorImpl.java:332)
	at org.hibernate.internal.SessionImpl.doWork(SessionImpl.java:2153)
	at org.hibernate.internal.SessionImpl.doWork(SessionImpl.java:2138)
	at com.aveksa.server.db.persistence.PersistenceServiceProvider.runStoredProcedure(PersistenceServiceProvider.java:1526)
	... 5 more
Caused by: Error : 6502, Position : 0, Sql = BEGIN System_Report.Run(:1 ,:2 ,:3 ,:4 ); END;, 
OriginalSql = {call System_Report.Run(?,?,?,?)}, Error Msg = ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "AVUSER.SYSTEM_REPORT", line 235
ORA-06512: at line 1

Please refer to RSA Knowledge Base Article  000030327 -- Artifacts to gather in RSA Identity Governance & Lifecycle to find the location of the aveksaServer.log file for your specific deployment if you are on a WildFly cluster or a non-WildFly platform.
 
Cause
This is a known issue reported in engineering ticket ACM-101319.
 
Resolution
This issue is resolved in the following RSA Identity Governance & Lifecycle versions and/or patch levels:
  • RSA Identity Governance & Lifecycle 7.1.1 P04
  • RSA Identity Governance & Lifecycle 7.2
Workaround
The ASR may be run from the Linux command line. Please see RSA Knowledge Base Article 000027912 -- How to create an Aveksa Statistics Report (ASR) from the Linux command line using SQL in RSA Identity Governance & Lifecycle for this workaround.