IMembershipTable Interface
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Interface pour la table d’appartenance.
public interface IMembershipTable
type IMembershipTable = interface
Public Interface IMembershipTable
- Dérivé
Méthodes
CleanupDefunctSiloEntries(DateTimeOffset) |
Supprimer toutes les entrées de silo mortes antérieures à |
DeleteMembershipTableEntries(String) |
Supprime toutes les entrées de table du clusterId donné |
InitializeMembershipTable(Boolean) |
Initialise la table d’appartenance, sera appelé avant toutes les autres méthodes |
InitializeMembershipTable(GlobalConfiguration, Boolean, Logger) |
Initialise la table d’appartenance, sera appelé avant toutes les autres méthodes |
InsertRow(MembershipEntry, TableVersion) |
Atomically essaie d’insérer (ajouter) un nouveau MembershipEntry pour un silo et de mettre à jour la TableVersion. Si l’opération réussit, les modifications suivantes sont apportées à la table :
|
ReadAll() |
Lit atomiquement le contenu complet de la table d’appartenance. L’élément MembershipTableData retourné inclut toutes les entrées MembershipEntry pour tous les silos de la table et la TableVersion pour cette table. Les éléments MembershipEntries et TableVersion doivent être lus de manière atomique. |
ReadRow(SiloAddress) |
Lit atomiquement les informations de la table d’appartenance sur un silo donné. L’élément MembershipTableData retourné inclut une entrée MembershipEntry pour un silo donné et la TableVersion pour cette table. MembershipEntry et TableVersion doivent être lus de manière atomique. |
UpdateIAmAlive(MembershipEntry) |
Mises à jour la partie IAmAlive (colonne) de l’élément MembershipEntry pour ce silo. Cette opération doit uniquement mettre à jour la colonne IAmAlive et ne pas modifier les autres colonnes. Cette opération est une « écriture incorrecte » ou une « mise à jour en place » et est effectuée sans validation etag. En ce qui concerne la mise à jour des eTags : cette opération peut mettre à jour automatiquement l’eTag associé à la ligne de silo donnée, mais elle n’est pas nécessaire. Il peut également laisser l’etag non modifié (« écriture sale »). En ce qui concerne TableVersion : cette opération ne doit pas modifier la TableVersion de la table. Il devrait le laisser intact. Il n’existe aucun scénario où cette opération pourrait échouer pour des raisons sémantiques de table. Il ne peut échouer qu’en raison de problèmes réseau ou d’indisponibilité de table. |
UpdateRow(MembershipEntry, String, TableVersion) |
Atomically essaie de mettre à jour MembershipEntry pour un silo et de mettre également à jour TableVersion. Si l’opération réussit, les modifications suivantes sont apportées à la table :
|