Compartir a través de


IStateProvider.UpdateEpochAsync(Epoch, Int64, CancellationToken) Método

Definición

Indica a una réplica que ha cambiado la configuración de un conjunto de réplicas debido a un cambio o intento de cambio a la réplica principal. El cambio se produce debido a errores o equilibrio de carga de la réplica principal anterior. Los cambios de época actúan como barrera mediante la segmentación de operaciones en los períodos de configuración exactos en los que se enviaron mediante una réplica principal específica.

public System.Threading.Tasks.Task UpdateEpochAsync (System.Fabric.Epoch epoch, long previousEpochLastSequenceNumber, System.Threading.CancellationToken cancellationToken);
abstract member UpdateEpochAsync : System.Fabric.Epoch * int64 * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function UpdateEpochAsync (epoch As Epoch, previousEpochLastSequenceNumber As Long, cancellationToken As CancellationToken) As Task

Parámetros

epoch
Epoch

Nuevo objeto Epoch.

previousEpochLastSequenceNumber
Int64

Número máximo de secuencia (LSN) en la época anterior.

cancellationToken
CancellationToken

Objeto CancellationToken que observa la operación. Se puede usar para enviar una notificación de que se debe cancelar la operación. Tenga en cuenta que la cancelación es un aviso y que es posible que la operación todavía se complete aunque se cancele.

Devoluciones

Devuelve Task.

Comentarios

La información del UpdateEpochAsync(Epoch, Int64, CancellationToken) método permite al servicio mantener un vector de progreso, que es una lista de cada época que ha recibido la réplica y el LSN máximo que contenían.

Los datos del vector de progreso junto con el LSN máximo aplicado actual son útiles para que una réplica secundaria se envíe durante la operación de copia para describir el estado de la réplica.

La comparación de vectores de progreso recibidos de réplicas secundarias durante la operación de copia permite a las réplicas principales determinar si la réplica secundaria está actualizada, qué estado se debe enviar a la réplica secundaria y si la réplica secundaria ha realizado un progreso falso.

El progreso falso significa que una réplica secundaria informa de un LSN en una época anterior era mayor que el LSN que la réplica principal tiene en su vector de progreso.

Se aplica a