次の方法で共有


IStateProvider.OnDataLossAsync(CancellationToken) メソッド

定義

このレプリカ セット内のレプリカの書き込みクォーラムが失われたため、データ損失が発生した可能性があることを示します。 レプリカ セットは、プライマリ レプリカを含むレプリカの大部分で構成されます。

public System.Threading.Tasks.Task<bool> OnDataLossAsync (System.Threading.CancellationToken cancellationToken);
abstract member OnDataLossAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Function OnDataLossAsync (cancellationToken As CancellationToken) As Task(Of Boolean)

パラメーター

cancellationToken
CancellationToken

CancellationToken操作が監視しているオブジェクト。 操作を取り消す必要があることを示す通知を送信するために使用できます。 取り消しはアドバイザリであり、取り消された場合でも操作が完了する可能性があることに注意してください。

戻り値

Task<TResult>この通知の処理の一環として状態プロバイダーが状態を変更したかどうかを示す 型Booleanの を返します。

注釈

Service Fabric ランタイムは、プライマリ レプリカを含むレプリカのクォーラムの障害を観察すると、新しいプライマリ レプリカを選択し、新しいプライマリ レプリカでこのメソッドをすぐに呼び出します。 データ損失の可能性が通知されたプライマリ レプリカは、一部の外部データ ソースから状態を復元するか、現在の状態で実行を続けることができます。 サービスが現在の状態で引き続き実行される場合は、このメソッドから false を返す必要があります。これは、状態の変更が行われなかったことを示します。 不完全な作業のロールバックなど、状態を復元または変更した場合は、true を返す必要があります。 true が返された場合は、他のレプリカの状態が正しくないと見なす必要があります。 したがって、Service Fabric ランタイムは、レプリカ セットから他のレプリカを削除し、それらを再作成します。

適用対象