Recovery from Failure of a DCO Volume
Note
The procedures in this section depend on the DCO version number. See the VERITAS Volume Manager Administrator's Guide for information about DCO versioning.
Persistent FastResync uses a data change object (DCO) volume to perform tracking of changed regions in a volume. If an error occurs while reading or writing a DCO volume, it is detached and the badlog flag is set on the DCO. All further writes to the volume are not tracked by the DCO.
The following sample output from the vxprint command shows a complete volume with a detached DCO volume (the TUTIL0 and PUTIL0 fields are omitted for clarity):
TY NAME ASSOC KSTATE LENGTH PLOFFS STATE ...
dg mydg mydg - - - -
dm mydg01 c4t50d0 - 35521408 - -
dm mydg02 c4t51d0 - 35521408 - -
dm mydg03 c4t52d0 - 35521408 - FAILING
dm mydg04 c4t53d0 - 35521408 - FAILING
dm mydg05 c4t54d0 - 35521408 - -
v SNAP-vol1 fsgen ENABLED 204800 - ACTIVE
pl vol1-03 SNAP-vol1 ENABLED 204800 - ACTIVE
sd mydg05-01 vol1-03 ENABLED 204800 0 -
dc SNAP-vol1_dco SNAP-vol1 - - - -
v SNAP-vol1_dcl gen ENABLED 144 - ACTIVE
pl vol1_dcl-03 SNAP-vol1_dcl ENABLED 144 - ACTIVE
sd mydg05-02 vol1_dcl-03 ENABLED 144 0 -
sp vol1_snp SNAP-vol1 - - - -
v vol1 fsgen ENABLED 204800 - ACTIVE
pl vol1-01 vol1 ENABLED 204800 - ACTIVE
sd mydg01-01 vol1-01 ENABLED 204800 0 -
pl vol1-02 vol1 ENABLED 204800 - ACTIVE
sd mydg02-01 vol1-01 ENABLED 204800 0 -
dc vol1_dco vol1 - - - BADLOG
v vol1_dcl gen DETACHED 144 - DETACH
pl vol1_dcl-01 vol1_dcl ENABLED 144 - ACTIVE
sd mydg03-01 vol1_dcl-01 ENABLED 144 0 -
pl vol1_dcl-02 vol1_dcl DETACHED 144 - IOFAIL
sd mydg04-01 vol1_dcl-02 ENABLED 144 0 RELOCATE
sp SNAP-vol1_snp vol1 - - - -
This output shows the mirrored volume, vol1, its snapshot volume, SNAP-vol1, and their respective DCOs, vol1_dco and SNAP-vol1_dco. The two disks, mydg03 and mydg04, that hold the DCO plexes for the DCO volume, vol1_dcl, of vol1 have failed. As a result, the DCO volume, vol1_dcl, of the volume, vol1, has been detached and the state of vol1_dco has been set to BADLOG. For future reference, note the entries for the snap objects, vol1_snp and SNAP-vol1_snp, that point to vol1 and SNAP-vol1 respectively.
You can use such output to deduce the name of a volume's DCO (in this example, vol1_dco), or you can use the following vxprint command to display the name of a volume's DCO:
# vxprint [-g diskgroup] -F%dco_name volume
You can use the vxprint command to check if the badlog flag is set for the DCO of a volume as shown here:
# vxprint [-g diskgroup] -F%badlog dco_name
This command returns the value on if the badlog flag is set. For the example output, the command would take this form:
# vxprint -g mydg -F%badlog vol1_dco
on
Use the following command to verify the version number of the DCO:
# vxprint [-g diskgroup] -F%version dco_name
This returns a value of 0 or 20. For the example output, the command would take this form:
# vxprint -g mydg -F%version vol1_dco
The DCO version number determines the recovery procedure that you should use:
|