ENTRYSEQUPDATES
Valid for
Replicat
Description
Use ENTRYSEQUPDATES
to enable entry-sequenced records to be replicated with exactly the same key as the record on the source system. Because standard Guardian functions do not permit control of entry-sequenced record keys, omitting ENTRYSEQUPDATES
results in the following limitations:
-
During an initial load (or similar situation), duplicate record conditions may not be detected; therefore, multiple instances of the same record can occur in the target file.
-
When updates occur on the source database, there is no guarantee that the corresponding key on the target database is the same. Therefore, to guarantee updates are applied properly, a unique alternate key must be specified.
When ENTRYSEQUPDATES
is specified, Replicat manipulates file contents directly through unstructured file access. This type of access imposes the following restrictions on the target file:
-
The file is open for
PROTECTED
access (no other processes, including other Replicat processes, can update the file). -
The target file cannot be TMF audited.
-
No more than one source file can be associated with the target file (to guarantee that the keys are unique).
-
A trade-off exists between flushing file contents at any given time and performance.
ENTRYSEQUPDATES
causes Replicat to manipulate file blocks directly. This ensures that each record is inserted into the target file in exactly the same place as in the source file (for other file types, this occurs automatically). To maximize performance, Replicat attempts to build these blocks in memory, keeping a private cache, and assumes subsequent records will be inserted in close proximity. This maximizes performance by minimizing the amount of messages with the disk process.
You must specify ENTRYSEQUPDATES
in the parameter file before any MAP
statements for entry-sequenced files.
Syntax
ENTRYSEQUPDATES {EXACTKEY | NOEXACTKEY} [, FLUSHALWAYS | NOFLUSHALWAYS] [, HIDEGAPS | NOHIDEGAPS] [, EXCLUSIVEOPEN | PROTECTEDOPEN]
-
EXACTKEY | NOEXACTKEY
-
Subsequent maps should always have exact key replication specified. Specify
NOEXACTKEY
to cancel exact key replication for subsequent entries. -
FLUSHALWAYS | NOFLUSHALWAYS
-
Each time a block is updated, it is flushed to disk. This makes the record immediately visible to the application. The default is
NOFLUSHALWAYS
. -
HIDEGAPS | NOHIDEGAPS
-
-
HIDEGAPS
— The default. If records for a particular block arrive out of order, hide records in the block from view until all prior records in the block arrive. This guarantees that records with a length of zero are never returned. UseHIDEGAPS
when replicating non-TMF entry-sequenced files. -
NOHIDEGAPS
— Make visible all records in a block, regardless of whether prior records have arrived. The trade-off is that missing records will appear to have a length of zero when reading the file.
-
-
EXCLUSIVEOPEN
-
Opens the target file exclusively. This is recommended by Oracle GoldenGate when opening structured files for unstructured write access, as is done when
ENTRYSEQUPDATES
is specified. -
PROTECTEDOPEN
-
Allows users access to read-only files while Oracle GoldenGate is writing to the file.
Example
The following example causes exact replication of the key, optimized for the highest throughput.
ENTRYSEQUPDATES, EXACTKEY, NOFLUSHALWAYS