Symantec logo

Recovery from failure of a DCO volume

The procedure to recover from the failure of a data change object (DCO) volume depends on the DCO version number.

See the Veritas Volume Manager Administrator's Guide.

Persistent FastResync uses a 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 c4t50d0s2 - 35521408 - -

dm mydg02 c4t51d0s2 - 35521408 - -

dm mydg03 c4t52d0s2 - 35521408 - FAILING

dm mydg04 c4t53d0s2 - 35521408 - FAILING

dm mydg05 c4t54d0s2 - 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.

See "Recovering a version 0 DCO volume" on page 27.

See "Recovering a version 20 DCO volume" on page 28.