Writer instructions | |
---|---|
Page title | For most spaces, this page must be titled Space announcements. For spaces with localized content, this page must be titled Space announcements l10n. |
Purpose | Provide an announcement banner on every page of your space. |
Location | Move this page outside of your home branch. |
Guidelines |
Archive Log Transfer Gap (LogTransferGap)
Displays a gap during redo transfers from a primary to a standby destination.
During the transfer from a primary to a standby destination, the LogTransferGap parameter displays a gap, either in the redo logs or the archive logs.
When the LGWR process is used, the LGWR process of the primary instance simultaneously tries to write redo information to the standby redo log files.
When the ARCH process is used, the archive redo logs are simultaneously generated on the standby destination.
The log_archive_dest_n parameter of a primary instance can either have a LGWR or an ARCH process to transfer redo data to the standby site. For example, log_archive_dest_n = '<tns-service_entry> LGWR/ARCH ….
The redo gap at the standby site can be for the following reasons:
- Problem in the primary instance.
- Network between the primary and the standby instance is slow.
- Primary instance is unable to identify the standby site.
- Standby TNS service entry is deactivated, deferred, or removed from the primary LOG_ARCHIVE_DEST_n parameter.
- Problems in the standby instance, for example, when - the standby listener is down.- the stndby instance is down.- there is an error at the standby destination.
- The primary instance's, LGWR or ARCH process is unable to write to the standby site.
- The primary instance is unable to resolve the service name when the TNS service entry of a standby instance is removed from the tnsnames.ora file at the primary site.
There are two types of gaps at a standby site:
- Logs missing in between during transfer
- Logs missing sequentially during transfer
The following example explains the sequential gaps for logical and physical standy:
Sequence at the primary site | Sequence at the standby site |
---|---|
16 | 16 |
17 | – Logs missing sequentially |
18 | – Logs missing sequentially |
19 | – Logs missing sequentially |
20 | – Logs missing sequentially |
The sequential gap formula for both logical and physical standby is:
max (last archived sequence on primary destination) – max(last archived sequence on standby destination)
When you apply the above formula to the example and subtract the highest sequence number at the standby site (16) from the highest sequence number at the primary site (20), the result is 4.
The following example explains the in between gaps for physical standy:
Sequence at the primary site | Sequence at the standby site |
---|---|
10 | 10 |
11 | 11 |
12 | – Logs missing in between |
13 | – Logs missing in between |
14 | – Logs missing in between |
15 | 15 |
In this example, the query uses the v$archive_gap from the standby instance and it displays
high_sequence# | Low_sequence# |
---|---|
14 | 12 |
In this example, the query uses the v$archive_gap view and it displays a high sequence value of 14 and a low sequence value of 12. When you apply the formula to the example, subtract the lowest unmatched sequence number at the standby site (12) from the highest unmatched sequence number at the standby site (14), and add 1 to the result of that calculation, the result is 3.
- The v$archive_gap view displays rows only when the recovery process is running on the physical standby instance. The view displays only one gap that appears to be stopping the recovery process from applying log files.
The total LogTransferGap for physical standby = sequential gap calculation plus the v$archive gap calculation (4 + 3 = 7)
The following example explains the formula to find in between gap for a logical standby:
Sequence# return 4 rows from first query | Sequence# return 4 rows from second query |
---|---|
91 | 85 |
103 | 93 |
105 | 105 |
108 | 108 |
4 rows are selected.
Sequence# from first query output | Sequence# from second query output | Operation |
---|---|---|
85 (ignore this sequence#) | ||
91 | 93 | 93 – 91 – 1 = 1 |
103 | 105 | 105 – 103 – 1 = 1 |
105 | 108 | 108 – 105 – 1 = 2 |
108 (ignore this sequence#) |
The in-between gap for above scenario is 1+1+2 = 4
The total LogTransferGap for logical standby = sequential gap + in-between gap (3 + 4 = 7)
BMC PATROL propertiess
Attribute | Default value |
---|---|
Application class | ORACLE_STANDBY_DG_INST_PARAMS |
Command type | not applicable |
Platform | All |
Icon style | Graph |
Unit | Number of logs |
Border range | Undefined |
Alarm1 range | Undefined |
Alarm2 range | Undefined |
Scheduling(poll time) | Not applicable |
Active at installation | Yes |
Parameter type | Consumer |
Annotated? | Yes |
Value set by | CollDataGuard |
When this parameter reaches the specified range, an event gets triggered, and the event details display those sequence numbers, which have not been transfered to the standby instance.
The annotation report for the parameter displays the following information:
HostName:Instance = HostName:InstanceName; LogTransferGap = ParameterValue; Parameter Status = ParameterStatus
Log Sequence Numbers from Sequence X to Sequence Y are not transferred.
For more information on how to apply thresholds for this parameter, see the PATROL Configuration Manager User Guide.
BMC ProactiveNet Performance Management properties
Property | Default value |
---|---|
Monitor type | Oracle Database Standby DG Instance Parameters |
Key Performance Indicator | No |
Monitor for abnormalities | No |
Graph by default | No |
Availability | No |
Response time | No |
Normal distribution | No |
Statistical | No |