ORA-01438: value larger than specified precision allowed

One Star

ORA-01438: value larger than specified precision allowed

Hi,
we implemented one complex job and its target around 180 columns are there. while we executing the job we got below precision error.
can we find in talend design which column getting precision error occurs. also its horrible to find to each column checking .
please help me. how do resolve this?
Starting job EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT at 17:32 05/03/2012.
connecting to socket on port 3377
connected
Exception in component tOracleOutput_1
java.sql.BatchUpdateException: ORA-01438: value larger than specified precision allowed for this column
at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:674)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:9394)
at oracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:211)
at test.eqx_ods_sde_ora_oe_order_headers_stg_rt_0_1.EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.tOracleInput_1Process(EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.java:18909)
at test.eqx_ods_sde_ora_oe_order_headers_stg_rt_0_1.EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.tOracleInput_50Process(EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.java:3621)
at test.eqx_ods_sde_ora_oe_order_headers_stg_rt_0_1.EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.tOracleInput_9Process(EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.java:3178)
at test.eqx_ods_sde_ora_oe_order_headers_stg_rt_0_1.EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.tOracleInput_12Process(EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.java:2820)
disconnected
at test.eqx_ods_sde_ora_oe_order_headers_stg_rt_0_1.EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.tOracleInput_13Process(EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.java:2430)
at test.eqx_ods_sde_ora_oe_order_headers_stg_rt_0_1.EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.runJobInTOS(EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.java:45879)
at test.eqx_ods_sde_ora_oe_order_headers_stg_rt_0_1.EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.main(EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT.java:45747)
Job EQX_ODS_SDE_ORA_OE_Order_Headers_Stg_RT ended at 17:39 05/03/2012.

Thanks,
Srinivasan S
One Star

Re: ORA-01438: value larger than specified precision allowed

Hi Srinivasan
Sometimes this issue may be caused by the difference between columns in tOracleInput and columns in DB table.
Sometimes this is caused by special characters in input data.
So this must be a horrible issue. Smiley Sad
You'd better to check UDUMP log whether there is any error like this.
An invalid number has been seen.Memory contents are :
Dump of memory from 0x0000002A974CDE88 to 0x0000002A974CDE9E
2A974CDE80 3331312E 0406C102
2A974CDE90 C9BBC6C8 52024D01 30310248 00003304

You can get more help, if any of your coworker is Oracle DBA.
Regards,
Pedro