Database Replication and Clustering
The TimeDelayFilter
delays writing events to the
THL and should be used only on slaves in the
remote-to-thl
stage. This delays
writing the transactions into the THL files, but allows the application of
the slave data to the database to continue without further intervention.
Pre-configured filter name |
delay
| ||
Classname |
com.continuent.tungsten.replicator.filter.TimeDelayFilter
| ||
Property prefix |
replicator.filter.delay
| ||
Stage compatibility | remote-to-thl | ||
tpm Option compatibility |
--repl-svc-thl-filters
| ||
Data compatibility | Any event | ||
Parameters | |||
Parameter | Type | Default | Description |
delay
| numeric | 300 | Number of seconds to delay transaction processing row |
The TimeDelay
delays the application of
transactions recorded in the THL. The delay can be used to allow
point-in-time recovery of DML operations before the transaction has been
applied to the slave, or where data may need to be audited or checked
before transactions are committed.
For effective operation, master and slaves should be synchronized using NTP or a similar protocol.
To enable the TimeDelayFilter
, use
tpm command to enable the filter operation and the
required delay. For example, to enable the delay for 900 seconds:
shell> ./tools/tpm update alpha --hosts=host1,host2,host3 \
--repl-svc-applier-filters=delay \
--property=replicator.filter.delay.delay=900
Time delay of transaction events should be performed with care, since the delay will prevent a slave from being up to date compared to the master. In the event of a node failure, an up to date slave is required to ensure that data is safe.