Error Code details
V-16-20007-1037
Severity: Error 
Component: Cluster Server 
Message:
CVMVolDg:testdg:monitor:Recheck of status check failed
Description:


Details:
If 5.0MP3-RP2 is installed on an alternate bootdisk using "patchadd -R <rootpath>" then the CVMTypes.cf file of the current bootdisk is updated instead of the one from the alternate bootdisk.

This is due to the postpatch script that comes with patch 139755-02:

node1:# more postpatch
#!/usr/bin/ksh

# Postpatch script for CAVF

CVMTYPESFILE=/etc/VRTSvcs/conf/config/CVMTypes.cf
TMPCVMTYPESFILE=/tmp/CVMTypes.cf

[ -f $CVMTYPESFILE ] &&
sed 's/static keylist RegList = { CVMActivation }/static keylist RegList = { CVMActivation, CVMVolume }/' $CVMTYPESF
ILE > $TMPCVMTYPESFILE &&
mv $TMPCVMTYPESFILE $CVMTYPESFILE

# Add additional argument to ArgList of CFSMount resource type
#

CFSTYPESFILE=/etc/VRTSvcs/conf/config/CFSTypes.cf   <<<<<<<<<<<<<<<<<<<<<<<<
TMPCFSTYPESFILE=/tmp/CFSTypes.cf

[ -f $CFSTYPESFILE ] &&
sed 's/static str ArgList\[\] = { MountPoint, BlockDevice, MountOpt }/static str ArgList\[\] = { MountPoint, BlockDe
vice, MountOpt, Primary }/' $CFSTYPESFILE > $TMPCFSTYPESFILE &&
mv $TMPCFSTYPESFILE $CFSTYPESFILE


exit 0
node1:#


In this scenario c0t2d0s0 is the bootdisk and c0t1d0s0 is the alternate bootdisk that we have cloned.


node1:# df -k
Filesystem            kbytes    used   avail capacity  Mounted on
/dev/dsk/c0t2d0s0    15345315 11340126 3851736    75%    /

/dev/dsk/c0t1d0s0    15345315 9921967 5269895    66%    /mnt
node1:#


Now we perform the installation of the "VERITAS Cluster Server Agents for Storage Foundation Cluster File System" RP2 patch, 139755-02, on the alternate bootdisk.


node1:# patchadd -R /mnt 139755-02
Validating patches...

Loading patches installed on the system...

Done!

Loading patches requested to install.

Done!

Checking patches that you specified for installation.

Done!


Approved patches will be installed in this order:

139755-02


Checking installed patches...
Executing prepatch script...
Verifying sufficient filesystem capacity (dry run method)...
Installing patch packages...

Patch 139755-02 has been successfully installed.
See /mnt/var/sadm/patch/139755-02/log for details
Executing postpatch script...

Patch packages installed:
 VRTScavf

node1:#


We verify the patch has been installed on the alternate bootdisk:


node1:# showrev -p |grep 139755-02
node1:# showrev -R /mnt -p |grep 139755-02
Patch: 139755-02 Obsoletes:  Requires: 127319-02 Incompatibles:  Packages: VRTScavf
node1:#

But the CVMTypes.cf has been updated in the current bootdisk instead of the one in the alternate bootdisk.

node1:# ls -l /mnt/etc/VRTSvcs/conf/config/CVMTypes*
-rw-------   2 root     root         749 Jun 20  2009 /mnt/etc/VRTSvcs/conf/config/CVMTypes.cf
-rw-------   2 root     root         720 Jun 18  2009 /mnt/etc/VRTSvcs/conf/config/CVMTypes.cf.18Jun2009.12.08.03
-rw-------   2 root     root         749 Jun 20  2009 /mnt/etc/VRTSvcs/conf/config/CVMTypes.cf.18Jun2009.12.08.08
-rw-------   1 root     root         749 Jun 20  2009 /mnt/etc/VRTSvcs/conf/config/CVMTypes.cf.20Jun2009.19.55.10
-rw-------   1 root     root         749 Jun 20  2009 /mnt/etc/VRTSvcs/conf/config/CVMTypes.cf.20Jun2009.21.00.09
-rw-------   2 root     root         720 Jun 18  2009 /mnt/etc/VRTSvcs/conf/config/CVMTypes.cf.previous
node1:#
node1:# ls -l /etc/VRTSvcs/conf/config/CVMTypes*
-rw-r--r--   1 root     root         760 Mar 30 14:44 /etc/VRTSvcs/conf/config/CVMTypes.cf  <<<<<<<<<<<<<<<<<<<<<<<<
-rw-------   2 root     root         720 Jun 18  2009 /etc/VRTSvcs/conf/config/CVMTypes.cf.18Jun2009.12.08.03
-rw-------   1 root     root         749 Jun 20  2009 /etc/VRTSvcs/conf/config/CVMTypes.cf.18Jun2009.12.08.08
-rw-------   1 root     root         749 Jun 20  2009 /etc/VRTSvcs/conf/config/CVMTypes.cf.20Jun2009.19.55.10
-rw-------   1 root     root         749 Jun 20  2009 /etc/VRTSvcs/conf/config/CVMTypes.cf.20Jun2009.21.00.09
-rw-------   2 root     root         720 Jun 18  2009 /etc/VRTSvcs/conf/config/CVMTypes.cf.previous
node1:#


So when booting up from the cloned disk the CVMVolDg type will be:

type CVMVolDg (
       static keylist RegList = { CVMActivation }
       static str ArgList[] = { CVMDiskGroup, CVMVolume, CVMActivation }
       str CVMDiskGroup
       keylist CVMVolume
       str CVMActivation
       temp int voldg_stat
)


Instead of:

type CVMVolDg (
       static keylist RegList = { CVMActivation, CVMVolume }   <<<<<<<<<<<<<<<<<<<<<<
       static str ArgList[] = { CVMDiskGroup, CVMVolume, CVMActivation }
       str CVMDiskGroup
       keylist CVMVolume
       str CVMActivation
       temp int voldg_stat
)


And therefore adding a volume to an existing CVMVolDg resource will cause the resource to fail.


Workaround

1) freeze all service groups
2) haconf -dump -makero  to close configuration  
3) hastop -all -force    to stop the cluster daemon without stopping applications
4) update the CVMTypes.cf file with the CVMVolume value in the RegList
5) hastart  on each cluster node
6) if nothing is marked as faulted then unfreeze everything

Reference: verisearch.ges.symantec.com/tnotes/all_docs/348242.htm

 

Veritas solutions
This UMI code does not yet have a Solution.Click here to issue a request for a Solution.