Recycling errors fails when using IKM Oracle Incremental Update (Merge)
638555Sep 19 2008 — edited Sep 23 2008I'm currently exploring, how exactly error recycling works. My ultimate goal is to have simple interface for loading data, and make transformations only to erraneous records.
I have created simple interface, with one source table, one target table and simple constraint on code field. As IKM I'm using 'IKM Oracle Incremental Update (Merge)' and have set 'Recycle errors' to Yes, however in operator, I see, that the step fails with error message:
"+904 : 42000 : java.sql.SQLException: ORA-00904: "IND_UPDATE": invalid identifier"+
when i check the step where flow table is created, there indeed is no such column:
+create table DWSTAGING.I$_LIG_STATUSS_DIM
(
IDD_STATUSS NUMBER(22) NULL,
STAT_CODE VARCHAR2(4) NULL,
DAT_STAT_FROM DATE NULL,
DAT_STAT_TO DATE NULL
)
NOLOGGING+
I do not have IND_UPDATE field in my inteface, it is internal ODI field, and it is missing in flow table, therefore recycling erros is not possible if using IKM Oracle Incremental Update (MERGE). Please notify me if there is a way to fix this.
When I choose simple IKM Oracle Incremental Update, recycling errrors step works, however I still do not understand how exactly I can correct errors, if only those records are inserted in I$ table, that do not already exist in I$ table (but they do exist, they just contain errors).
So - is there a way to keep interface for loading data simple, and make transformations only to erraneous records?