NAME

Set-DcsReplicationConsistencyPoint

SYNOPSIS

A failover mechanism that sends a Replication Consistency Point marker for all Members of a virtual disk group with an optional user-defined code to identify the marker. This cmdlet can be used in conjunction with the cmdlet Add-ReplicationConsistencyRollback to create CDP rollbacks on the destination when an application is known to be in a consistent state.

SYNTAX

Set-DcsReplicationConsistencyPoint   -VirtualDiskGroup <Object>   [ -UserDefinedCode <Byte> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ]

DESCRIPTION

A failover mechanism that sends a Replication Consistency Point marker for all Members of a virtual disk group with an optional user-defined code to identify the marker. This cmdlet can be used in conjunction with the cmdlet Add-ReplicationConsistencyRollback to create CDP rollbacks on the destination when an application is known to be in a consistent state. This cmdlet requires a virtual disk group on the source server that is being replicated to another virtual disk group with equivalent virtual disks on the destination server. In order to create rollbacks on the destination, CDP must be enabled for all virtual disks in the virtual disk group on the same server acting as the replication destination. Once the virtual disk group is created and a consistency point is sent, Do not add, remove or split any virtual disk in the group; this will invalidate all markers previously sent for the virtual disk group. Note: For mirrored virtual disks in a group, either server on the source side may replicate to the destination, although this in not an optimal configuration and we recommend using the same source server to replicate all virtual disks to the destination to keep I/O more consistent. In order to send markers that are in a known good state, before invoking this cmdlet, stop I/O to the group (until the call completes) and flush the cache on the hosts. Markers should be sent when virtual disks are healthy and the replication transfer status is healthy. Markers cannot be sent if the buffer is full or missing. When the cmdlet is invoked, the marker is inserted in the data stream of each local active virtual disk in the group. Each time a marker is received at the destination, the cache on the destination server is flushed.

PARAMETERS

-VirtualDiskGroup<Object>
VirtualDiskGroupData object, name or ID that identifies a virtual disk group on the local active (source) side of the replications. The VirtualDiskGroupData object can be obtained with Get-DcsVirtualDiskGroup.

Required: true
Position: 1
Default value:
Accept pipeline input: true (ByValue)
Accept wildcard characters: false

-UserDefinedCode<Byte>
An optional user-defined code used to identify the marker being sent or the condition of the data being marked. Valid values for the code are from 0 - 255. If a code is not specified, the default value of 0 will be sent.

Required: false
Position: 2
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-Connection<String>
Alias of the connection to the server group. If not specified, the default connection is used.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-PipelineVariable<String>

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

INPUTS

VirtualDiskGroupData : Object that identifies the virtual disk group sending the marker.

OUTPUTS

NOTES

Also see Get-DcsReplicationConsistencyPoint, Add-DcsReplicationConsistencyRollback

EXAMPLES


-------------- Example 1 Sends a marker for a specified virtual disk group and userdefined code --------------
Set-DcsReplicationConsistencyPoint -VirtualDiskGroup "VD Group 1" -UserDefinedCode 10
		

The cmdlet is invoked to send a marker for the virtual disk group named "VD Group 1". The user-defined code is set to "10" which is a meaningful code to the user.


-------------- Example 2 Sends a marker for virtual disks in multiple virtual disk groups --------------
$RepConsistencyPtGroups = Get-DcsVirtualDiskGroup | where {$_.Description -like "*consistency point*"}
$RepConsistencyPtGroups | ForEach {Set-DcsReplicationConsistencyPoint -VirtualDiskGroup $_ -UserDefinedCode 10}
		

The cmdlet Get-DcsVirtualDiskGroup is used to get all the objects for virtual disk groups that contain the words "consistency point" in the description and save them to the variable "$RepConsistencyPtGroups. Then the cmdlet Set-DcsReplicationConsistencyPoint is invoked for each VirtualDiskGroupData object saved in the variable. The user-defined code is set to "10" which is a meaningful code to the user.