IMembershipTable Интерфейс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Интерфейс для таблицы членства.
public interface IMembershipTable
type IMembershipTable = interface
Public Interface IMembershipTable
- Производный
Методы
CleanupDefunctSiloEntries(DateTimeOffset) |
Удаление всех недоставленных записей слоу старше |
DeleteMembershipTableEntries(String) |
Удаляет все записи таблицы заданного идентификатора clusterId. |
InitializeMembershipTable(Boolean) |
Инициализирует таблицу членства, будет вызываться перед всеми другими методами. |
InitializeMembershipTable(GlobalConfiguration, Boolean, Logger) |
Инициализирует таблицу членства, будет вызываться перед всеми другими методами. |
InsertRow(MembershipEntry, TableVersion) |
Atomically пытается вставить (добавить) новый MembershipEntry для одного сило, а также обновить TableVersion. Если операция завершится успешно, в таблицу будут внесены следующие изменения:
|
ReadAll() |
Атомарным образом считывает полное содержимое таблицы членства. Возвращенная запись MembershipTableData включает все записи MembershipEntry для всех силосов в таблице и TableVersion для этой таблицы. Членства и TableVersion должны быть считываться атомарным образом. |
ReadRow(SiloAddress) |
Атомарны считывает сведения о таблице членства по заданному сило. Возвращенная запись MembershipTableData включает одну запись MembershipEntry для заданного сило и TableVersion для этой таблицы. MembershipEntry и TableVersion должны быть считываться атомарным образом. |
UpdateIAmAlive(MembershipEntry) |
Обновления часть IAmAlive (столбец) объекта MembershipEntry для этого сило. Эта операция должна обновлять только столбец IAmAlive и не изменять другие столбцы. Эта операция является "грязной записью" или "обновлением на месте" и выполняется без проверки etag. Что касается обновления eTags: эта операция может автоматически обновлять eTag, связанный с заданной строкой с расширением silo, но это не обязательно. Он также может оставить etag не измененным ("грязная запись"). Что касается TableVersion: эта операция не должна изменять TableVersion таблицы. Он должен оставить его нетронутым. Нет сценария, в котором эта операция может завершиться сбоем из-за семантических причин таблицы. Это может завершиться ошибкой только из-за проблем с сетью или недоступности таблицы. |
UpdateRow(MembershipEntry, String, TableVersion) |
Atomically пытается обновить MembershipEntry для одного сило, а также обновить TableVersion. Если операция завершится успешно, в таблицу будут внесены следующие изменения:
|