Dirty Region Log (DRL) got detached even if the Disk Group Detach Policy (diskdetpolicy) is set to "local"
book
Article ID: 100002390
calendar_today
Updated On:
Description
Error Message
pl ora_admin-03 ora_admin DETACHED(SPARSE) LOGONLY - ACTIVE - - <<< DRL plex is detached
Resolution
Please note that in a Veritas Storage Foundation for Cluster File System (SFCFS) environment, the DRL will be detached cluster-wide if any cluster node loses the connection to the disk storage containing the DRL. This happens regardless of the setting of the "Disk Group Detach Policy (diskdetpolicy)" attribute of the Cluster Volume Manager (CVM) disk group. For example, when a cluster node loses the connection to the disk storage containing the DRL and even if the Disk Group Detach Policy is set to "local", the DRL will be detached.
v ora_admin fsgen ENABLED 104857600 - ACTIVE - -
pl ora_admin-01 ora_admin ENABLED 104857600 - ACTIVE - -
sd racshrdg221-02 ora_admin-01 ENABLED 104857600 0 - - -
pl ora_admin-02 ora_admin ENABLED 104857600 - ACTIVE - -
sd racshrdg421-02 ora_admin-02 ENABLED 104857600 0 - - -
pl ora_admin-03 ora_admin DETACHED(SPARSE) LOGONLY - ACTIVE - - <<< DRL plex is detached
sd racshrdg224-08 ora_admin-03 ENABLED 1056 LOG - - -
# vxdg_list_racshrdg
Group: racshrdg
dgid: 1269255572.16.sxx090
import-id: 33792.19
flags: shared cds
version: 140
alignment: 8192 (bytes)
local-activation: shared-write
cluster-actv-modes: sxxx091=sw sxx090=sw
ssb: on
autotagging: on
detach-policy: local <<< even if detach-policy is set to local
dg-fail-policy: leave
....
After the DRL is detached, if a new master is selected (for example, when the whole diskgroup is disabled and the original master panic'ed because of Disk Group Fail Policy (dgfailpolicy) is set to "leave"), the new master will have to perform a full resync of the mirrors. This is the current limitation of the DRL.
Solutions:
Please use the Data Change Object (DCO) Version 20 instead of DRL and the DCO be mirrored across enclosures. The Dirty Region Logging capability is built into DCO Version 20. The behavior is explained below:
If DCO volume is non-mirrored:
When the slave loses access to the disk storage containing the DCO, the DCO would remain enabled
When the master loses access to the disk storage containing the DCO, the DCO would be detached.
If DCO volume is mirrored across enclosures:
Mirroring provides an added protection to single point of failure where either the slave or the master can lose disk access to ONE of the DCO volumes.
If the DCO 20 volume is mirrored, the recommendation is to set the Disk Group Detach Policy as "global". Disk Group Detach policy as "local" would result in the DCO detach, whenever the master loses access to one of the disk storage containing the DCO mirrors. Set the DG detach policy as "global" to avoid this DCO detach.
If the master loses access to both the DCO mirrors, DCO would be detached.
The following command can be used to add a DCO to the volume with the DCO volume mirrored.
# vxsnap -g "dg" prepare "volume" ndcomirs="number"
Another solution is to add one more copy of the DRL to the mirrored volume using a different storage enclosure to increase the chance of the survival of the DRL. If the loss of disk storage connection is limited only to one DRL, the other copy of the DRL will remain enabled.
The following command can be used to add a mirrored DRL to the volume.
# vxassist -g "dg" addlog "volume" logtype=drl nlog=2
The following command can be used to add another copy of DRL to the volume with DRL already.
# vxassits -g "dg" addlog "volume" logtype=drl
Issue/Introduction
Dirty Region Log (DRL) got detached even if the Disk Group Detach Policy (diskdetpolicy) is set to "local"
Was this article helpful?
thumb_up
Yes
thumb_down
No