Show / Hide Table of Contents

Interface IReplicationCluster<TEntry>

Represents replication cluster.

Inherited Members
IReplicationCluster.ForceReplicationAsync(CancellationToken)
IReplicationCluster.ReplicationCompleted
ICluster.Leader
ICluster.WaitForLeaderAsync(TimeSpan, CancellationToken)
ICluster.LeaderChanged
ICluster.ResignAsync(CancellationToken)
IPeerMesh<IClusterMember>.TryGetPeer(EndPoint)
IPeerMesh.Peers
IPeerMesh.PeerDiscovered
IPeerMesh.PeerGone
Namespace: DotNext.Net.Cluster.Replication
Assembly: DotNext.Net.Cluster.dll
Syntax
public interface IReplicationCluster<TEntry> : IReplicationCluster, ICluster, IPeerMesh<IClusterMember>, IPeerMesh where TEntry : class, ILogEntry
Type Parameters
Name Description
TEntry

The type of the log entry in the transaction log.

Properties

| Edit this page View Source

AuditTrail

Gets transaction log used for replication.

Declaration
IAuditTrail<TEntry> AuditTrail { get; }
Property Value
Type Description
IAuditTrail<TEntry>

Methods

| Edit this page View Source

ReplicateAsync<TEntryImpl>(TEntryImpl, CancellationToken)

Appends a new log entry and ensures that it is replicated and committed.

Declaration
ValueTask<bool> ReplicateAsync<TEntryImpl>(TEntryImpl entry, CancellationToken token = default) where TEntryImpl : TEntry
Parameters
Type Name Description
TEntryImpl entry

The log entry to be added.

CancellationToken token

The token that can be used to cancel the operation.

Returns
Type Description
ValueTask<bool>

true if the appended log entry has been committed by the majority of nodes; false if retry is required.

Type Parameters
Name Description
TEntryImpl

The type of the log entry.

Exceptions
Type Condition
InvalidOperationException

The current node is not a leader.

OperationCanceledException

The operation has been canceled.

Extension Methods

BasicExtensions.As<T>(T)
BasicExtensions.GetUserData<T>(T)
BasicExtensions.IsBetween<T, TLowerBound, TUpperBound>(T, TLowerBound, TUpperBound)
BasicExtensions.IsOneOf<T>(T, ReadOnlySpan<T>)
ExpressionBuilder.Const<T>(T)
AsyncLockAcquisition.AcquireLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, TimeSpan, CancellationToken)
LockAcquisition.AcquireReadLock<T>(T)
LockAcquisition.AcquireReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireUpgradeableReadLock<T>(T)
LockAcquisition.AcquireUpgradeableReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireWriteLock<T>(T)
LockAcquisition.AcquireWriteLock<T>(T, TimeSpan)
  • Edit this page
  • View Source
☀
☾
In this article
Back to top
Supported by the .NET Foundation
☀
☾