High-Availability Data Replication (HDR)
HDR consists of a pair of servers — the primary and the HDR secondary — and supports both synchronous and asynchronous replication modes. In synchronous mode, transactions on the primary server will not commit until it receives an acknowledgement from the HDR secondary server. Thus, the HDR secondary is immediately ready to take the place of the primary server — what is called a "hot" standby. In asynchronous mode, only checkpoints are synchronized between the primary and HDR secondary. One characteristic of HDR is that it uses a half-duplex communication protocol and thus is sensitive to network latency. This is not the case for SD and RS secondary servers.
Table 1, below, compares the server types. Table 2 lists some common
ONCONFIG
settings.
Configuration parameter | Server type | Supported Values | Description |
---|---|---|---|
DRAUTO | Primary, HDR server |
Arbitrator control the failover |
Controls how the primary and HDR secondary behave in a failure scenario. |
DRIDXAUTO | Primary, HDR server |
|
Automatically repair an index, if the HDR secondary server detects a corruption. |
DRINTERVAL | Primary |
-1 - Operate in synchronous mode > 0 - Operate in asynchronous mode |
The maximum interval, in seconds, between flushing of the highavailability data-replication buffer. |
HDR_TXN_SCOPE | Primary |
ASYNC - Commits are not synced NEAR_SYNC - The committed transaction has been sent to the HDR secondary but not yet applied. FULL_SYNC - The transaction has been sent and applied on the HDR secondary. |
Defines transactional synchronization in the HDR primary when DRINTERVAL is turned off. The default is NEAR_SYNC. To enable HDR_TXN_SCOPE behavior DRINTERVAL config parameter value must be set to 0. |
DRLOSTFOUND | Primary, HDR server | <path for lost and found file> | The path for the HDR lost-andfound transaction file. This file is created during a failover and contains the transactions committed on the primary but not the HDR server. |
DRTIMEOUT | Primary |
>= 0 seconds Default value = 30 seconds |
The time, in seconds, before a network timeout occurs. Used by DRAUTO to detect failover. |