Search This Blog

ORA-12899: value too large for column "XXXXXX_SOAINFRA"."CUBE_INSTANCE"."PARENT_REF_ID" (actual: 183, maximum: 150)



ORA-12899: value too large for column "XXXXXX_SOAINFRA"."CUBE_INSTANCE"."PARENT_REF_ID" (actual: 183, maximum: 150)



most of the developer may face this issues , product bug in 11.1.1.6 ( RCU )


####<12-10-30 12:18:18> <Error> <EJB> <ngmlx474> <soa_dev01_BusinessServer01> <orabpel.invoke.pool-9.thread-16> <<anonymous>> <> <bf7983de9889d95f:-2434797f:13aa2dd1c6f:-8000-000000000005858b> <1351599498800> <BEA-010026> <Exception occurred during commit of transaction Name=[EJB oracle.bpm.bpmn.engine.ejb.impl.BPMNDeliveryBean.handleInvoke(java.lang.String,boolean)],Xid=BEA1-2ADBF765566162A5A6AB(465613166),Status=Rolled back. [Reason=Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.1.v20111018-r10243): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: ORA-12899: value too large for column "XXXXXXX_SOAINFRA"."CUBE_INSTANCE"."PARENT_REF_ID" (actual: 183, maximum: 150)


Solution :

The options available to solve this problem are
a) Modify the VARCHAR fields used by BPM so they store chars rather than bytes (using SQL)

b) Modify the database NLS_LENGTH_SEMANTICS parameter to indicate that VARCHAR fields are char-sized rather than byte-sized.


If NLS_LENGTH_SEMANTICS is set to BYTE in your database. We recommend to make this to set NLS_LENGTH_SEMANTICS = 'CHAR'


If you have other schemas also running in the database which dont support modifying the NLS_LENGTH_SEMANTICS = 'CHAR' then the option left is to modify the columns of the below tables which may raise the issue

using alter table modify column_name varchar(500) manually. Below are the list of columns that needs to be altered. Please take back up of the records which you are altering.


"SOAINFRA"."DLV_SUBSCRIPTION"."SUBSCRIBER_ID" 

"SOAINFRA"."BPM_AUDIT_QUERY"."FAULT_TYPE" 

"SOAINFRA"."WFTASK"."PARENTCOMPONENTINSTREFID" 

"SOAINFRA".""WFTASKHISTORY"."PARENTCOMPONENTINSTREFID" 

"SOAINFRA".""DLV_MESSAGE"."RES_SUBSCRIBER" 

"SOAINFRA"."CUBE_INSTANCE"."PARENT_REF_ID" 

"SOAINFRA"."WORK_ITEM"."CUSTOM_ID" 

"SOAINFRA".BPM_AUDIT_QUERY"."SCOPE_ID" 

"SOAINFRA"."WORK_ITEM"."NODE_ID" 

"SOAINFRA"."WORK_ITEM"."SCOPE_ID" 

"SOAINFRA"."BPM_CUBE_TASKPERFORMANCE"."SCOPEID"


Increase the size of these columns to 500.
Done...........................................................
Thank you

3 comments:

  1. Increase the size of your column thats easy :)

    ReplyDelete
  2. Why 500, instead actual: 183, maximum: 150 so increase field size to 183 or above would be fine

    ReplyDelete
  3. Thanks a lot, this was the only informative result in google regarding this issue!!

    ReplyDelete