LogStateWithMetaData<TEntry> Class

Definition

A class that extends grain state with versioning metadata, so that a log-consistent grain can use a standard storage provider.

C#
[System.Serializable]
public class LogStateWithMetaData<TEntry> where TEntry : class
C#
[System.Serializable]
[Orleans.GenerateSerializer]
public sealed class LogStateWithMetaData<TEntry> where TEntry : class

Type Parameters

TEntry
Inheritance
LogStateWithMetaData<TEntry>
Attributes

Constructors

LogStateWithMetaData<TEntry>()

Initializes a new instance of the LogStateWithMetaData<TEntry> class.

Properties

GlobalVersion

The length of the log

Log

The stored view of the log

WriteVector

Metadata that is used to avoid duplicate appends. Logically, this is a (string->bit) map, the keys being replica ids But this map is represented compactly as a simple string to reduce serialization/deserialization overhead Bits are read by GetBit(String) and flipped by FlipBit(String). Bits are toggled when writing, so that the retry logic can avoid appending an entry twice when retrying a failed append.

Methods

FlipBit(String)

Toggle one of the bits in WriteVector and return the new value.

GetBit(String)

Gets one of the bits in WriteVector

Applies to

Tuote Versiot
.NET Orleans 1.5.10, 3.4.5, 3.6.0, 7.0.0, 8.0.0, 8.1.0, 8.2.0, 9.0.0