During the life of a shadow set, the state of any shadow setmember relative to the rest of the members of the shadow set canvary. The shadow set is considered to be in a steady state whenall of its members are known to contain identical data. Changes in the compositionof the shadow set are inevitable because:
Disk drives occasionally need correctivemaintenance.
New disks are added to replace other disks.
System failures occur, requiring merge operationsto take place within the shadow set.
Controllers fail, requiring maintenance.
System management functions, such as backup, arerequired.
For example, suppose an operator dismounts a member of a shadowset and then remounts the member back into the shadow set. Duringthe member's absence, the remaining members of the shadow set mayhave experienced write operations. Thus, the information on themember being remounted into the shadow set will differ from theinformation on the rest of the shadow set. Therefore, a copy (orminicopy) operation is required.
As another example, consider a situation where a shadow setis mounted by several systems in an OpenVMS Cluster configuration.If one of those systems fails, the data on the members of the shadowset may differ because of outstanding or incomplete write operationsissued by the failed system. The shadowing software resolves thissituation by performing a merge operation.
In any event, copy and merge operations allow volume shadowingto preserve the consistency of the data written to the shadow set. A shadow set is consideredto be in a transient state when one or moreof its members are undergoing a copy or a merge operation.
Additionally, volume shadowing maintains shadow set consistencyby:
Maintaining consistent data on shadowset members by automatically detecting and replacing bad blocks onone shadow set member and rewriting those bad blocks with good datafrom another shadow set member.
Notifying all nodes when a member is added or removedfrom a shadow set, and ensuring the shadow set membership is consistentclusterwide.
Volume shadowing uses two internal mechanisms to coordinateshadow set consistency:
Storage control blocks (SCBs)
Volume shadowing uses a storage control block (SCB) as a primarymethod for controlling shadow set membership. Each physical diskcontains an SCB in which the shadowing software records the namesof all the current members of the shadow set. Each time the compositionof the shadow set changes, the SCB on all members is updated. Thisfeature simplifies clusterwide membership coordination and is alsoused by the MOUNT qualifier /INCLUDE to reconstruct a shadow set.
Shadow set generation number
Volume shadowing uses a shadow set generation number as aprimary method of determining shadow set member validity and status.A shadow set generation number is an incrementing value that isstored on every member of a shadow set. Each time a membership changeoccurs to the shadow set (members are mounted, dismounted, or fail),the generation number on the remaining members is incremented. Thus,if a shadow set's generation number is 100 and a member is dismountedfrom the set, the generation numbers on the remaining members areincremented to 101. The removed member's generation number remainsat 100. When mounting shadow sets, the shadowing software uses thegeneration numbers, found in the SCB on the physical units, to determinethe need for and direction of copy operations.
Table 1 Information in the Storage Control Block (SCB)
SCB Information
Function
Volume label
Identifies a unique namefor the volume. Every member of a shadow set must use the same volumelabel.
BACKUP revisionnumber
A BACKUP/IMAGE restorationrearranges the location of data on a volume and sets a revisionnumber to record this change. The Mount utility (MOUNT) checks therevision number of the proposed shadow set member against the numberson current or other proposed shadow set members. If the revisionnumber differs, the shadowing software determines whether a copyor merge operation is required to bring the data on the less currentmembers up to date.
Volume shadowing generation number
When a member joins a shadowset, it is marked with a volume shadowing generation number. Youcan zero the generation number by using the /OVERRIDE=SHADOW_MEMBERSHIPqualifier with the MOUNT command.
Mount and dismount status
The SCB mount status field is used asa flag that is set when a volume is mounted and cleared when itis dismounted. There is also a count of the number of nodes thathave mounted the shadow set write-enabled. The MOUNT command checks thisfield when a disk is mounted. If the flag is set, this indicatesthat the disk volume was incorrectly dismounted. This will occurin the event of system failure. When mounting shadow sets that wereincorrectly dismounted, or where the write count field is not correct,the shadowing software automatically initiates merge operations.
Upon receiving a command to mount a shadow set, the volumeshadowing software immediately determines whether a copy or a mergeoperation is required; if either is required, the software automaticallyperforms the operation to reconcile data differences. If you arenot sure which disks might be targets of copy operations, you canspecify the /CONFIRM or /NOCOPY qualifiers when you use the MOUNTcommand. To disable performing any copy operations, use the /NOCOPYqualifier. If you mount a shadow set interactively, use the /CONFIRMqualifier to instruct MOUNT to display the targets of copy operationsand request permission before the operations are performed.
When you dismount an individual shadow set member, you producea situation similar to a hardware disk failure. Because files remainopen on the virtual unit, the removed physical unit is marked as not being properlydismounted.
After one of the devices is removed from a shadow set, theremaining shadow set members have their generation number incremented,identifying them as being more current than the former shadow set member.This generation number aids in determining the correct copy operationif you remount the member into a shadow set.