VSS では多数のシャドウ コピーを一度に存在できますが、IVssBackupComponents::StartSnapshotSetの呼び出しとIVssBackupComponents::D oSnapshotSetへの呼び出しからのリターンの間で、1 つのシャドウ コピー セットの作成を進行中にすることができます。
部分コミットなし
いずれかのプロバイダーがシャドウ コピー セット内の任意のボリュームまたは LUN でシャドウ コピーに失敗した場合、シャドウ コピー セット全体の作成は失敗します。 これは仕様です。 この設計により、部分的な障害セマンティクスに関連する動作の問題が簡略化され、セット内のすべてのシャドウ コピーで一貫したポイントインタイムが維持されます。
エラー状態の報告
プロバイダー エラーまたはエラー状態が発生した場合、プロバイダーはエラーをアプリケーション イベント ログに記録する必要があります。 これには、シャドウ コピー セットの作成またはインポート時のプロバイダー固有のエラーや、作成後の書き込み時のコピー シャドウ コピーのリソース割り当てエラーが含まれますが、これらに限定されません。 シャドウ コピー セット内のボリュームがフリーズ状態になっている間は、このログ記録を実行しないでください。
有効なプロバイダーの戻り値
次の表に、プロバイダー メソッドの有効なリターン コードとその意味を示します。
価値 | 形容 |
---|---|
S_OK |
メソッドが成功しました。 |
E_OUTOFMEMORY |
プロバイダーがメモリやその他のシステム リソースを使い切った。 |
E_INVALIDARG |
パラメーター値の 1 つが無効です。 |
E_ACCESSDENIED |
特権のないクライアントがプロバイダーを呼び出そうとしました。 |
VSS_E_BAD_STATE |
要求された操作をサポートするプロバイダーがないか、オブジェクトが正しい状態ではないため、オブジェクトに対して操作を実行できません。 |
VSS_E_OBJECT_NOT_FOUND |
パラメーターは、見つからなかったオブジェクト (シャドウ コピー ID、シャドウ コピー セット ID、ボリュームなど) を参照します。 |
VSS_E_INSUFFICIENT_STORAGE |
十分なディスク領域がないため、プロバイダーは操作を実行できません。 |
VSS_E_VOLUME_NOT_SUPPORTED |
このコンピューター上のプロバイダーは、ボリュームで要求された操作をサポートしません。 |
VSS_E_VOLUME_NOT_SUPPORTED_BY_PROVIDER |
プロバイダーはボリュームをサポートしていません。 |
VSS_E_MAXIMUM_NUMBER_OF_SNAPSHOTS_REACHED |
プロバイダーがサポートできるシャドウ コピーの最大数に達しました。 |
VSS_E_PROVIDER_VETO |
プロバイダーで、別の戻り値にマップされない内部ランタイム エラーが発生しました。 また、プロバイダーは、この問題を解決する方法に関する情報をユーザーに提供するイベントをアプリケーション イベント ログに書き込む必要があります。 |
VSS_E_CANNOT_REVERT_DISKID |
1 つ以上のディスクの MBR 署名または GPT ID を要求された値に設定できませんでした。 詳細については、アプリケーション イベント ログを確認してください。 |
プロバイダーは、他のエラー コードを返そうとしないでください。
プロバイダーが予期しないエラー コード (たとえば、S_FALSE、E_FAIL、E_UNEXPECTED、または E_ABORT) を返した場合、VSS は、プロバイダーと失敗したメソッドを示すイベント ログにイベントを書き込み、要求元に戻る前にエラーを VSS_E_UNEXPECTED_PROVIDER_ERROR に変換します。 これは、IVssProviderCreateSnapshotSet::AbortSnapshots または IVssProviderNotifications::OnUnloadからの戻り値には実行されません。