Información general sobre la limpieza y finalización de la restauración
Después de una restauración, los escritores comprueban el estado de la operación para que puedan usar los datos restaurados y tratar los errores. El solicitante debe esperar a que se complete esta actividad. Para obtener más información, vea Información general sobre el procesamiento de una restauración en VSS.
En la tabla siguiente se muestra la secuencia de acciones y eventos necesarios después de que se haya realizado una operación de restauración.
Acción del solicitante | Evento | Acción de escritor |
---|---|---|
El solicitante indica el final de la restauración (consulte IVssBackupComponents::P ostRestore). | PostRestore | El escritor realiza la limpieza posterior a la restauración y controla los errores de restauración y los archivos que se han restaurado en ubicaciones no estándar (consulte CVssWriter::OnPostRestore, IVssComponent). |
El solicitante espera a los escritores para controlar el evento PostRestore con IVssAsync. También debe comprobar el estado del escritor (consulte IVssBackupComponents::GatherWriterStatus, IVssBackupComponents::GetWriterStatus). | None | None |
El solicitante libera la interfaz IVssBackupComponents . | None | None |
Acciones del solicitante durante la limpieza y la finalización
En este punto, un solicitante indica el final de sus actividades de restauración de archivos mediante la generación de un evento PostRestore mediante una llamada a IVssBackupComponents::P ostRestore.
Las acciones del solicitante se limitan a esperar a los escritores, que pueden necesitar realizar algunas limpiezas finales y controlar los errores de restauración, y liberar la interfaz IVssBackupComponents después de que todos los escritores hayan vuelto del control del evento PostRestore .
Acciones del escritor durante la limpieza y finalización
El evento PostRestore se controla mediante el método virtual CVssWriter::OnPostRestore. La implementación predeterminada simplemente devuelve true sin realizar ninguna acción. Si un escritor necesita ejercer más control de la situación posterior a la restauración, puede invalidar este método.
Además de cualquier limpieza normal (por ejemplo, quitar archivos temporales) que un escritor puede realizar en CSVSWriter::OnPostRestore, puede controlar el éxito o el error de las operaciones de restauración.
La forma en que controla los errores de restauración, los archivos restaurados en una ubicación alternativa y la necesidad de restauraciones futuras es completamente a discreción del escritor. Las acciones típicas pueden incluir la comparación de archivos en ubicaciones alternativas o nuevas con archivos actualmente en uso, la combinación de datos de varios archivos o el inicio de nuevas sesiones conectadas a los nuevos archivos de datos. VSS proporciona los siguientes mecanismos para admitir esto de forma componente por componente:
- Se puede encontrar éxito o error al restaurar cualquier componente con IVssComponent::GetFileRestoreStatus.
- El uso de asignaciones de ubicación alternativas en la restauración de archivos se indicará mediante IVssComponent::GetAlternateLocationMapping.
- Determinar si una restauración es incremental y requerirá restauraciones adicionales se realiza mediante una llamada a IVssComponent::GetAdditionalRestores. Los escritores que necesitan una restauración completa de sus datos no deben reiniciarse hasta que este método devuelva false.
- Los escritores pueden determinar si el solicitante ha necesario restaurar archivos en una ubicación no especificada previamente mediante IVssComponent::GetNewTargetCount e IVssComponent::GetNewTarget
(Para obtener más información sobre cómo restaurar archivos en ubicaciones no predeterminadas, vea Ubicaciones de copia de seguridad y restauración no predeterminadas).
Al igual que con cualquier método IVssComponent , la información devuelta por una instancia determinada se aplica a esos componentes incluidos explícitamente para la copia de seguridad y a cualquiera de sus subcomponentes de copia de seguridad, incluidos los subcomponentes incluidos explícitamente para la restauración por parte del solicitante mediante IVssBackupComponents::AddRestoreSubcomponent (consulte Working with Selectability For Restore and Subcomponents (Trabajar con selectibilidad para restaurar y subcomponentes para obtener más información).
Dado que los escritores requerirán acceso al documento de componentes de copia de seguridad, es importante que el solicitante no libere la interfaz IVssBackupComponents hasta que los escritores hayan terminado de procesarse.