1 Reply Latest reply: Aug 30, 2013 11:51 AM by marie.couch RSS

    Performing DELETE on target

    63b931a1-d01f-4ba4-bf9d-463b723ecbe2

      Hi,

       

       

      I am new to this forum and technology (GoldenGate not Oracle), so forgive if you consider this a stupid question. But, is it possible in GoldenGate to perform a DELETE on the target system without corrupting the whole GoldenGate Replication-Process? I am aware that if wanted to update the deleted record, there will be exceptions raised. But will the rest of the replication process still work properly? I am asking because the system I am working on sort of crashed, which means no data, not even newly enetered records, were replicated anymore. Is there a parameter for ignoring exceptions like this?

       

      Kind regards,

      Georg

        • 1. Re: Performing DELETE on target
          marie.couch

          Georg,

           

          The default behavior of Replicat is to apply the operations it reads from the trail as they were applied on the source system (insert, update, delete, etc.). If it encounters a not found condition on a delete or update, or a duplicate record on an insert, the default behavior is to abend. This is because these sorts of collisions indicate an out-of-sync condition between the source and target, and we operate on the assumption that a user will want to stop replication so they can correct this condition.

           

          However, in your case, since you know and accept that there is an out-of-sync condition, and you want to continue the transaction flow in spite of it, there are a number of parameters that let you override the default behavior.

           

          If you want to change the operation, there are a number of parameters that let you do that, for example INSERTDELETES, INSERTMISSINGUPDATES

          If you want Replicat to just handle the collision and move on, you could use: HANDLECOLLISIONS or OVERRIDEDUPS

           

          The Oracle GoldenGate Reference Manual discusses these and other parameters:

           

          http://docs.oracle.com/cd/E35209_01/doc.1121/e29399.pdf

           

          There are also several KM notes on My Oracle Support that discuss handling collisions:

           

          What Does The HANDLECOLLISIONS Parameter Do? (Doc ID 966207.1)

          Using HANDLECOLLISIONS and ignoring DML errors in Replicats (Doc ID 1572207.1)

           

          Let me know if these resources do not answer your questions about handling these operations in your Replicat.

           

          Best regards,
          Marie