I have a Java User Exit Extract running against a trail file that has been pumped to the GoldenGate instance in question. The extract starts up without any issues, but gives the following error after I update a record that has a RAW datatype as the primary key:
JAVAWRITER(javawriter.c:269) [ERROR]: Error occurred (Java exception): UEDataSource.createOperation:
com.goldengate.atg.datasource.InvalidTransactionState: A new operation was received without first receiving a BEGIN transaction. This can happen when processing is resumed in the middle of a transaction, or when there are "before" images in the trail that are not being sent to the user exit (always include "GetUpdateBefores" in the user-exit parameter file).
I have tried a number of things to try to resolve this, but I can't seem to make this work. the params for this extract currently looks like this:
setenv (GGS_USEREXIT_CONF = "dirprm/javaue.properties")
cuserexit ./dirprm/libggjava_ue.so CUSEREXIT passthru includeupdatebefores
table my_schema.B_PLN_DIR, fetchmodcols (PLN_DIR_ID, *);
... I've tried leaving off the "includeupdatebefores" argument to the cuserexit, leaving out the fetchmodcols handling for the table with the RAW PK field, but I still get the error shown above.
Any help / pointers is much appreciated.
includeupdatebefores (lowercase) doesn't work; you must use the uppercase INCLUDEUPDATEBEFORES !!