Valid For
Replicat
Description
Use the FILTERDUPS
and NOFILTERDUPS
parameters to handle anomalies that can occur on a NonStop system when an application performs multiple operations on the same record within the same transaction. This type of transaction can cause out-of-order records in the TMF audit trail and will cause Replicat to abend. For example:
An insert can occur in the audit trail before a delete on the same primary key, even though the source application performed the delete first, followed by the insert (resulting in a duplicate-record error when the insert is performed by Replicat).
An update can occur in the audit trail before an insert on the same primary key (resulting in a missing-record error when the update is performed by Replicat).
FILTERDUPS
prevents Replicat from abending by resolving the conditions as follows:
In the event of a duplicate insert, Replicat saves the duplicated insert until the end of the transaction. If a delete with the same primary key is subsequently encountered, Replicat performs the delete, then the insert.
In the event of a missing update, Replicat saves the missing update until the end of the transaction. If an insert with the same primary key is subsequently encountered, Replicat performs the insert, then the update.
IDX hospital applications and some BASE24 bank applications are the typical, but not the only, sources of this anomaly. Use FILTERDUPS
only if Replicat is abending on duplicate or missing records and you know they were caused by out-of-order transactions originating on a NonStop system. The Logdump utility can be used to diagnose this condition.
FILTERDUPS
and NOFILTERDUPS
can be used as on-off switches for different groups of MAP
statements to enable or disable the exception processing as needed.
Default
NOFILTERDUPS
Syntax
FILTERDUPS | NOFILTERDUPS
Example
This example turns on FILTERDUPS
for ORDERS
but disables it for any MAP
statements that are defined later in the same parameter file.
FILTERDUPS MAP $DATA1.SQLDAT.ORDERS, TARGET MASTER.ORDERS; NOFILTERDUPS