package store

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. case class CounterCheckpoint(counter: SequencerCounter, timestamp: CantonTimestamp, latestTopologyClientTimestamp: Option[CantonTimestamp]) extends PrettyPrinting with Product with Serializable

    Checkpoint a sequencer subscription can be reinitialized from.

    Checkpoint a sequencer subscription can be reinitialized from.

    counter

    The sequencer counter associated to the event with the given timestamp.

    timestamp

    The timestamp of the event with the given sequencer counter.

    latestTopologyClientTimestamp

    The latest timestamp before or at timestamp at which an event was created from a batch that contains an envelope addressed to the topology client used by the SequencerReader.

  2. class DbSequencerDomainConfigurationStore extends SequencerDomainConfigurationStore with DbStore
  3. class DbSequencerStore extends SequencerStore with NamedLogging with FlagCloseable with HasCloseContext

    Database backed sequencer store.

    Database backed sequencer store. Supports many concurrent instances reading and writing to the same backing database.

  4. case class DeliverErrorStoreEvent(sender: SequencerMemberId, messageId: MessageId, message: String256M, traceContext: TraceContext) extends StoreEvent[Nothing] with Product with Serializable
  5. case class DeliverStoreEvent[P](sender: SequencerMemberId, messageId: MessageId, members: NonEmpty[SortedSet[SequencerMemberId]], payload: P, signingTimestampO: Option[CantonTimestamp], traceContext: TraceContext) extends StoreEvent[P] with Product with Serializable

    Structure for storing a deliver events.

    Structure for storing a deliver events.

    members

    should include the sender and event recipients as they all will read the event

    signingTimestampO

    The timestamp of the snapshot to be used for determining the signing key of this event scala.None means that the sequencing timestamp should be used.

  6. class HASequencerWriterStore extends SequencerWriterStore with FlagCloseable with NamedLogging

    Sequencer writer storage intended to use a resource.DbStorageMulti.

  7. class InMemorySequencerDomainConfigurationStore extends SequencerDomainConfigurationStore
  8. class InMemorySequencerStore extends SequencerStore
  9. case class Payload(id: PayloadId, content: ByteString) extends Product with Serializable

    Payload with a assigned id and content as bytes

  10. case class PayloadId(id: CantonTimestamp) extends PrettyPrinting with Product with Serializable

    Identifier for a payload.

    Identifier for a payload. Should ideally be unique however this will be validated in SequencerStore.savePayloads. Is expected id is a timestamp in microseconds.

  11. case class Presequenced[+E <: StoreEvent[_]](event: E, maxSequencingTimeO: Option[CantonTimestamp]) extends HasTraceContext with Product with Serializable
  12. case class ReadEventPayloads(payloads: Seq[Sequenced[Payload]]) extends ReadEvents with Product with Serializable
  13. trait ReadEvents extends AnyRef
  14. case class RegisteredMember(memberId: SequencerMemberId, registeredFrom: CantonTimestamp) extends Product with Serializable
  15. case class SafeWatermark(nextTimestamp: Option[CantonTimestamp]) extends ReadEvents with Product with Serializable

    No events found but may return the safe watermark across online sequencers to read from the next time

  16. sealed trait SaveCounterCheckpointError extends AnyRef
  17. sealed trait SaveLowerBoundError extends AnyRef
  18. sealed trait SavePayloadsError extends AnyRef
  19. sealed trait SaveWatermarkError extends AnyRef
  20. case class Sequenced[+P](timestamp: CantonTimestamp, event: StoreEvent[P]) extends HasTraceContext with Product with Serializable

    Wrapper to assign a timestamp to a event.

    Wrapper to assign a timestamp to a event. Useful to structure this way as events are only timestamped right before they are persisted (this is effectively the "sequencing" step). Before this point the sequencer component is free to reorder incoming events.

  21. final case class SequencerDomainConfiguration(domainId: DomainId, domainParameters: StaticDomainParameters) extends Product with Serializable
  22. trait SequencerDomainConfigurationStore extends AnyRef
  23. sealed trait SequencerDomainConfigurationStoreError extends AnyRef
  24. class SequencerMemberCache extends AnyRef

    Read through async cache with no eviction (as members should be immutable, except for unauthenticated members that can be evicted when they get unregistered).

    Read through async cache with no eviction (as members should be immutable, except for unauthenticated members that can be evicted when they get unregistered). Members will only be cached if entries are found.

  25. case class SequencerMemberId(id: Int) extends PrettyPrinting with Product with Serializable

    In the sequencer database we use integers to represent members.

    In the sequencer database we use integers to represent members. Wrap this in the APIs to not confuse with other numeric types.

  26. trait SequencerStore extends NamedLogging with AutoCloseable

    Persistence for the Sequencer.

    Persistence for the Sequencer. Writers are expected to create a SequencerWriterStore which may delegate to this underlying store through an appropriately managed storage instance.

  27. trait SequencerWriterStore extends AutoCloseable

    A subset of the sequencer storage methods required by the SequencerWriter with convenience methods to avoid passing the instanceIndex everywhere.

  28. sealed trait StoreEvent[+PayloadReference] extends HasTraceContext

    Sequencer events in a structure suitable for persisting in our events store.

    Sequencer events in a structure suitable for persisting in our events store. The payload type is parameterized to allow specifying either a full payload or just a id referencing a payload.

  29. class UniqueKeyViolationException extends RuntimeException

    Thrown when a record that must be unique is inserted with a non-unique key.

    Thrown when a record that must be unique is inserted with a non-unique key. Mirrors the type of exceptions that we would expect to see from a database.

  30. case class Watermark(timestamp: CantonTimestamp, online: Boolean) extends Product with Serializable

    Time that the sequencer commits to not writing events before, and therefore it is safe to read events less or equal to this timestamp.

Ungrouped