IVssHardwareSnapshotProviderEx ::ResyncLuns, méthode (vsprov.h)
Le service VSS appelle cette méthode pour informer les fournisseurs de matériel qu’une resynchronisation d’unité logique est nécessaire.
Syntaxe
HRESULT ResyncLuns(
[in] VDS_LUN_INFORMATION *pSourceLuns,
[in] VDS_LUN_INFORMATION *pTargetLuns,
[in] DWORD dwCount,
[out] IVssAsync **ppAsync
);
Paramètres
[in] pSourceLuns
Pointeur vers un tableau de structures dwCountVDS_LUN_INFORMATION, un pour chaque LUN qui contribue au volume de cliché instantané.
[in] pTargetLuns
Pointeur vers un tableau de structures dwCountVDS_LUN_INFORMATION, un pour chaque LUN qui contribue au volume de destination où le contenu du volume de cliché instantané doit être copié.
[in] dwCount
Nombre d’éléments dans le tableau pSourceLuns. Il s’agit également du nombre d’éléments dans le tableau pTargetLuns.
[out] ppAsync
Pointeur vers un emplacement qui recevra une IVssAsync pointeur d’interface qui peut être utilisé pour récupérer l’état de l’opération de resynchronisation. Une fois l’opération terminée, l’appelant doit libérer le pointeur d’interface en appelant la méthode IUnknown ::Release.
Valeur de retour
Cette méthode peut retourner l’une de ces valeurs.
Retourner le code/la valeur | Description |
---|---|
|
L’opération a été effectuée avec succès. |
|
Mémoire insuffisante ou autres ressources système. |
|
Une erreur de fournisseur inattendue s’est produite. Si ce code d’erreur est retourné, l’erreur doit être décrite dans une entrée dans le journal des événements de l’application, ce qui donne à l’utilisateur des informations sur la façon de résoudre le problème. |
|
Le fournisseur ne peut pas effectuer l’opération, car il n’y a pas suffisamment d’espace disque. |
Remarques
Les unités logiques de destination peuvent être les NUMÉROS logiques qui contribuent au volume de production d’origine à partir duquel la copie instantanée a été créée, ou elles peuvent être des unités logiques nouvelles ou existantes utilisées pour remplacer un volume d’origine supprimé de la production.
Le fournisseur doit effectuer la resynchronisation en copiant des données au niveau du tableau d’unités logiques, et non au niveau de l’hôte. Cela signifie que le fournisseur ne peut pas implémenter la resynchronisation des lun en copiant simplement le contenu de l’unité logique source vers l’unité logique de destination. Les E/S requises pour effectuer la resynchronisation des LUN doivent être effectuées dans le matériel, via les périphériques de disque des unités logiques resynchronisées, et non via l’ordinateur hôte. Ces E/S doivent être complètement transparentes pour l’ordinateur hôte.
Une fois la resynchronisation terminée, les numéros d’unité logique sont entièrement fonctionnels et sont disponibles pour les opérations d’E/S.
Le matériel de disque sous-jacent doit prendre en charge les identificateurs d’appareil de page 83 uniques.
Si le numéro d’unité logique de destination est supérieur à l’unité logique source, le fournisseur doit redimensionner le numéro d’unité logique de destination si nécessaire pour s’assurer qu’il correspond à l’unité logique source après la resynchronisation.
Cette méthode ne peut pas être appelée dans WinPE et elle ne peut pas être appelée en mode sans échec. Avant d’appeler cette méthode, l’appelant doit utiliser la méthode IVssBackupComponents ::InitializeForRestore pour préparer la resynchronisation.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Aucun pris en charge |
serveur minimum pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | vsprov.h |