Skip to main content
GoldenGate

OGG-05663 CSN-based filtering suppressed a duplicate transaction

By March 21, 2024April 28th, 2024No Comments3 min read

In the realm of data replication, ensuring accuracy and efficiency are paramount. Oracle GoldenGate, a powerful tool for real-time data integration and replication, offers various mechanisms to enhance data integrity and streamline replication processes. One such mechanism is CSN-based filtering, a feature designed to prevent duplicate transactions from being applied to the target database. In this blog post, we’ll delve into the significance of CSN-based filtering and explore how it can be leveraged to maximize efficiency in data replication workflows.

Understanding CSN-Based Filtering: CSN-based filtering operates on the principle of Change Sequence Numbers (CSNs), which are unique identifiers assigned to each transaction captured by Oracle GoldenGate. As transactions are processed for replication, GoldenGate compares the CSNs of incoming transactions with those already applied to the target database. If a transaction with a duplicate CSN is detected, CSN-based filtering suppresses it from being applied, thus preventing redundant data from being replicated.

Let’s see what is the actual error

INFO    OGG-05663  Oracle GoldenGate Delivery for Oracle, rrmysql.prm:  CSN-based filtering suppressed a duplicate transaction from trail Seqno 6, RBA 12842, with CSN 000000000000000000032:000000192306808 and transaction ID 000000000000000000032:000000192305792.

Certainly! Here are some possible reasons for encountering the “OGG-05663 CSN-based filtering suppressed a duplicate transaction” error in Oracle GoldenGate: Concurrancy issues, Replication Lag, Configuration errors, network issues etc.

Let’s see the workarounds and other solutions to fix this problem.

Make sure “_CSNFILTERING OFF” entry in Globals file and refresh the manager.

[oracle@dORA-X500 ~]$ . setenv.sh
GGSCI (dORA-X500) 1> view params ./GLOBALS

GGSCHEMA OGGDB
--SYSLOG ERROR
ALLOWOUTPUTDIR /MYSQL/ggtrail
ALLOWOUTPUTDIR /dump/high_storage/ggtrail
CHECKPOINTTABLE OGGDB.CHKPTAB
ENABLEMONITORING
_CSNFILTERING OFF

Stop the Replicat Process

GGSCI (ORA-X500) 4> dblogin useridalias ggrpay
Successfully logged into database.
GGSCI (dm-ggora101z as ggadmin@srxaas121) 15> stop RRPAY1
GGSCI (ORA-X500 as ggadmin@srxaas121) 15> info RRPAY1
REPLICAT   RRPAY1    Initialized   2021-06-15 21:31   Status STOPPED
Checkpoint Lag       00:00:00 (updated 00:00:04 ago)
Log Read Checkpoint  File /MYSQL/ggtrail/PRPAY1/mp000000009
                     First Record  RBA 1610477

Delete the replicat and add the replicat to start form the point of failure.

GGSCI (ORA-X500 as ggadmin@srxaas121) 6> delete RRPAY1
2021-06-15 21:30:24  INFO    OGG-14034  Heartbeat entries with [RRPAY1] deleted.
Deleted REPLICAT RRPAY1.
GGSCI (ORA-X500 as ggadmin@srxaas121) 12> add replicat RRPAY1,exttrail /MYSQL/ggtrail/PRPAY1/mp, checkpointtable ggadmin.chkptab

GGSCI (dm-ggora101z as ggadmin@srxaas121) 14> ALTER REPLICAT RRPAY1, EXTSEQNO 9, EXTRBA 0

2021-06-15 21:31:58 INFO OGG-06594 Replicat RRPAY1 has been altered. Even the start up position might be updated, duplicate suppression remains active in next startup. To override duplicate suppression, start RRPAY1 with NOFILTERDUPTRANSACTIONS option.

GGSCI (ORA-X500 as ggadmin@srxaas121) 15> info RRPAY1
REPLICAT   RRPAY1    Initialized   2021-06-15 21:31   Status STOPPED
Checkpoint Lag       00:00:00 (updated 00:00:04 ago)
Log Read Checkpoint  File /MYSQL/ggtrail/PRPAY1/mp000000009
                     First Record  RBA 0

GGSCI (ORA-X500 as ggadmin@srxaas121) 15> start RRPAY1 NOFILTERDUPTRANSACTIONS  
GGSCI (dm-ggora101z) 18> info RRPAY1
info RRPAY1
REPLICAT   RRPAY1    Last Started 2021-06-14 15:51   Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:01 ago)
Process ID           82474
Log Read Checkpoint  File /MYSQL/ggtrail/PRPAY1/mp000000009
                     2021-06-15 20:56:20.000256  RBA 1610040

Once the replicat is started check whether the RBA is moving and in parallel monitor the ggserr.log file. References

REPLICAT Can Not Process Data, And Logdump Bus Error(coredump) (Doc ID 2166218.1)
Goldengate MYSQL Replication : NOFILTERDUPTRANSACTIONS Doesn’t Work As Expected (Doc ID 2784892.1)

Leave a Reply