Packages > @fluidframework/register-collection

@fluidframework/register-collection Package

Interfaces

Interface Alerts Description
IConsensusRegisterCollection Legacy, Alpha

A distributed data structure that holds a set of registers with update versions. On concurrent updates, a register internally stores all possible versions of a value by using reference sequence number of the incoming update.

Using all the stored versions, we can then distinguish amongst different read policies. Below are the policies we support:

Atomic: Atomicity requires a linearizable register. A linearizable register behaves as if there is only a single copy of the data, and that every operation appears to take effect atomically at one point in time. This definition implies that operations are executed in an well-defined order. On a concurrent update, we perform a compare-and-set operation, where we compare a register sequence number with the incoming reference sequence number. The earliest operation overwriting prior sequence numbers wins since every client reaches to an agreement on the value. So we can safely return the first value.

LWW: The last write to a key always wins.

IConsensusRegisterCollectionEvents Legacy, Alpha Events emitted by IConsensusRegisterCollection.

Classes

Class Alerts Description
ConsensusRegisterCollectionClass Legacy, Alpha

A distributed data structure that holds a set of registers with update versions. On concurrent updates, a register internally stores all possible versions of a value by using reference sequence number of the incoming update.

Using all the stored versions, we can then distinguish amongst different read policies. Below are the policies we support:

Atomic: Atomicity requires a linearizable register. A linearizable register behaves as if there is only a single copy of the data, and that every operation appears to take effect atomically at one point in time. This definition implies that operations are executed in an well-defined order. On a concurrent update, we perform a compare-and-set operation, where we compare a register sequence number with the incoming reference sequence number. The earliest operation overwriting prior sequence numbers wins since every client reaches to an agreement on the value. So we can safely return the first value.

LWW: The last write to a key always wins.

ConsensusRegisterCollectionFactory Legacy, Alpha The factory that defines the consensus queue.

Enumerations

Enum Alerts Description
ReadPolicy Legacy, Alpha Read policies used when reading the map value.

Types

TypeAlias Alerts Description
ConsensusRegisterCollection Legacy, Alpha Compatibility alias for IConsensusRegisterCollection.
IConsensusRegisterCollectionFactory Deprecated, Legacy, Alpha

Consensus Register Collection channel factory interface

Extends the base IChannelFactory to return a more definite type of IConsensusRegisterCollection Use for the runtime to create and load distributed data structure by type name of each channel.

Variables

Variable Alerts Modifiers Type Description
ConsensusRegisterCollection Legacy, Alpha readonly import("@fluidframework/shared-object-base/internal").ISharedObjectKind<IConsensusRegisterCollection<any>> & import("@fluidframework/shared-object-base/internal").SharedObjectKind<IConsensusRegisterCollection<any>>

A distributed data structure that holds a set of registers with update versions. On concurrent updates, a register internally stores all possible versions of a value by using reference sequence number of the incoming update.

Using all the stored versions, we can then distinguish amongst different read policies. Below are the policies we support:

Atomic: Atomicity requires a linearizable register. A linearizable register behaves as if there is only a single copy of the data, and that every operation appears to take effect atomically at one point in time. This definition implies that operations are executed in an well-defined order. On a concurrent update, we perform a compare-and-set operation, where we compare a register sequence number with the incoming reference sequence number. The earliest operation overwriting prior sequence numbers wins since every client reaches to an agreement on the value. So we can safely return the first value.

LWW: The last write to a key always wins.

Variable Details

ConsensusRegisterCollection

A distributed data structure that holds a set of registers with update versions. On concurrent updates, a register internally stores all possible versions of a value by using reference sequence number of the incoming update.

Using all the stored versions, we can then distinguish amongst different read policies. Below are the policies we support:

Atomic: Atomicity requires a linearizable register. A linearizable register behaves as if there is only a single copy of the data, and that every operation appears to take effect atomically at one point in time. This definition implies that operations are executed in an well-defined order. On a concurrent update, we perform a compare-and-set operation, where we compare a register sequence number with the incoming reference sequence number. The earliest operation overwriting prior sequence numbers wins since every client reaches to an agreement on the value. So we can safely return the first value.

LWW: The last write to a key always wins.

This API is provided for existing users, but is not recommended for new users.

To use, import via @fluidframework/register-collection/legacy.

For more information about our API support guarantees, see here .

Signature

ConsensusRegisterCollection: import("@fluidframework/shared-object-base/internal").ISharedObjectKind<IConsensusRegisterCollection<any>> & import("@fluidframework/shared-object-base/internal").SharedObjectKind<IConsensusRegisterCollection<any>>

Type: import("@fluidframework/shared-object-base/internal").ISharedObjectKind <IConsensusRegisterCollection <any>> & import("@fluidframework/shared-object-base/internal").SharedObjectKind <IConsensusRegisterCollection <any>>