Condividi tramite


ZooKeeperBasedMembershipTable.UpdateRow Metodo

Definizione

Atomicamente tenta di aggiornare MembershipEntry per un silo e aggiornare anche TableVersion. Se l'operazione ha esito positivo, le modifiche seguenti verranno apportate alla tabella:

  1. L'appartenenzaEntry per questo silo verrà aggiornato al nuovo membershipEntry (la voce precedente verrà sostituita completamente dalla nuova voce)
  2. L'eTag per l'eTag aggiornato sarà anche eTag con il nuovo eTag generato automaticamente.
  3. TableVersion.Version nella tabella verrà aggiornato al nuovo TableVersion.Version.
  4. TableVersion etag nella tabella verrà aggiornato al nuovo eTag generato automaticamente. Tutte le modifiche apportate alla tabella, l'aggiornamento di una nuova riga e l'aggiornamento della versione della tabella e degli etag associati, devono verificarsi in modo atomico o non hanno effetti collaterali. L'operazione deve non riuscire in ognuna delle condizioni seguenti:
  5. Una proprietà MembershipEntry per un determinato silo non esiste nella tabella
  6. Un oggetto MembershipEntry per un determinato silo esiste nella tabella, ma il relativo etag nella tabella non corrisponde all'etag fornito.
  7. L'aggiornamento di TableVersion non è riuscito poiché l'etag TableVersion specificato (come specificato dalla proprietà TableVersion.VersionEtag) non corrispondeva all'etag TableVersion nella tabella.
public System.Threading.Tasks.Task<bool> UpdateRow (Orleans.MembershipEntry entry, string etag, Orleans.TableVersion tableVersion);
abstract member UpdateRow : Orleans.MembershipEntry * string * Orleans.TableVersion -> System.Threading.Tasks.Task<bool>
override this.UpdateRow : Orleans.MembershipEntry * string * Orleans.TableVersion -> System.Threading.Tasks.Task<bool>
Public Function UpdateRow (entry As MembershipEntry, etag As String, tableVersion As TableVersion) As Task(Of Boolean)

Parametri

entry
MembershipEntry

AppartenenzaEntry da aggiornare.

etag
String

Etag per l'oggetto MembershipEntry specificato.

tableVersion
TableVersion

Nuovo TableVersion per questa tabella, insieme al relativo etag.

Restituisce

True se l'operazione di aggiornamento ha avuto esito positivo e false in caso contrario.

Implementazioni

Si applica a