trait SequencedEventStore extends PrunableByTime[Nothing] with NamedLogging with AutoCloseable
Persistent store for com.digitalasset.canton.sequencing.protocol.SequencedEvents received from the sequencer. The store may assume that sequencer counters strictly increase with timestamps without checking this precondition.
- Alphabetic
 - By Inheritance
 
- SequencedEventStore
 - AutoCloseable
 - NamedLogging
 - PrunableByTime
 - AnyRef
 - Any
 
- Hide All
 - Show All
 
- Public
 - Protected
 
Abstract Value Members
-   abstract  def advancePruningTimestamp(phase: PruningPhase, timestamp: CantonTimestamp)(implicit traceContext: TraceContext): EitherT[Future, Nothing, Unit]
- Attributes
 - protected[canton]
 - Definition Classes
 - PrunableByTime
 - Annotations
 - @VisibleForTesting()
 
 -   abstract  def close(): Unit
- Definition Classes
 - AutoCloseable
 - Annotations
 - @throws(classOf[java.lang.Exception])
 
 -   abstract  def doPrune(limit: CantonTimestamp)(implicit traceContext: TraceContext): EitherT[Future, Nothing, Unit]
- Attributes
 - protected[canton]
 - Definition Classes
 - PrunableByTime
 - Annotations
 - @VisibleForTesting()
 
 -   implicit abstract  val ec: ExecutionContext
- Definition Classes
 - SequencedEventStore → PrunableByTime
 
 -   abstract  def find(criterion: SearchCriterion)(implicit traceContext: TraceContext): EitherT[Future, SequencedEventNotFoundError, PossiblyIgnoredSerializedEvent]
Looks up an event by the given criterion.
Looks up an event by the given criterion.
- returns
 SequencedEventNotFoundError if no stored event meets the criterion.
 -   abstract  def findRange(criterion: RangeCriterion, limit: Option[Int])(implicit traceContext: TraceContext): EitherT[Future, SequencedEventRangeOverlapsWithPruning, Seq[PossiblyIgnoredSerializedEvent]]
Looks up a set of sequenced events within the given range.
Looks up a set of sequenced events within the given range.
- limit
 The maximum number of elements in the returned iterable, if set.
 -   abstract  def ignoreEvents(from: SequencerCounter, to: SequencerCounter)(implicit traceContext: TraceContext): EitherT[Future, ChangeWouldResultInGap, Unit]
Marks events between
fromandtoas ignored.Marks events between
fromandtoas ignored. Fills any gap betweenfromandtoby empty ignored events, i.e. ignored events without any underlying real event.- returns
 ChangeWouldResultInGap if there would be a gap between the highest sequencer counter in the store and
from.
 -   abstract  def loggerFactory: NamedLoggerFactory
- Attributes
 - protected
 - Definition Classes
 - NamedLogging
 
 -   abstract  def pruningStatus(implicit traceContext: TraceContext): EitherT[Future, Nothing, Option[PruningStatus]]
Returns the latest timestamp at which pruning was started or completed.
Returns the latest timestamp at which pruning was started or completed. For com.digitalasset.canton.pruning.PruningPhase.Started, it is guaranteed that no pruning has been run on the store after the returned timestamp. For com.digitalasset.canton.pruning.PruningPhase.Completed, it is guaranteed that the store is pruned at least up to the returned timestamp (inclusive). That is, another pruning with the returned timestamp (or earlier) has no effect on the store. Returns scala.None$ if no pruning has ever been started on the store.
- Definition Classes
 - PrunableByTime
 
 -  abstract def sequencedEvents(limit: Option[Int] = None)(implicit traceContext: TraceContext): Future[Seq[PossiblyIgnoredSerializedEvent]]
 -   abstract  def store(signedEvents: Seq[OrdinarySerializedEvent])(implicit traceContext: TraceContext): Future[Unit]
Stores the given com.digitalasset.canton.sequencing.protocol.SequencedEvents.
Stores the given com.digitalasset.canton.sequencing.protocol.SequencedEvents. If an event with the same timestamp already exist, the event may remain unchanged or overwritten.
 -   abstract  def unignoreEvents(from: SequencerCounter, to: SequencerCounter)(implicit traceContext: TraceContext): EitherT[Future, ChangeWouldResultInGap, Unit]
Removes the ignored status from all events between
fromandto.Removes the ignored status from all events between
fromandto.- returns
 ChangeWouldResultInGap if deleting empty ignored events between
fromandtowould result in a gap in sequencer counters.
 
Concrete Value Members
-   final  def !=(arg0: Any): Boolean
- Definition Classes
 - AnyRef → Any
 
 -   final  def ##: Int
- Definition Classes
 - AnyRef → Any
 
 -   final  def ==(arg0: Any): Boolean
- Definition Classes
 - AnyRef → Any
 
 -   final  def asInstanceOf[T0]: T0
- Definition Classes
 - Any
 
 -    def clone(): AnyRef
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
 
 -   final  def eq(arg0: AnyRef): Boolean
- Definition Classes
 - AnyRef
 
 -    def equals(arg0: AnyRef): Boolean
- Definition Classes
 - AnyRef → Any
 
 -   final  def getClass(): Class[_ <: AnyRef]
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -    def hashCode(): Int
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -   final  def isInstanceOf[T0]: Boolean
- Definition Classes
 - Any
 
 -    def logger: TracedLogger
- Attributes
 - protected
 - Definition Classes
 - NamedLogging
 
 -   implicit  def loggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
- Attributes
 - protected
 - Definition Classes
 - NamedLogging
 
 -   final  def ne(arg0: AnyRef): Boolean
- Definition Classes
 - AnyRef
 
 -    def noTracingLogger: Logger
- Attributes
 - protected
 - Definition Classes
 - NamedLogging
 
 -   final  def notify(): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -   final  def notifyAll(): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -   final  def prune(limit: CantonTimestamp)(implicit traceContext: TraceContext): EitherT[Future, Nothing, Unit]
Prune all unnecessary data relating to events before the given timestamp.
Prune all unnecessary data relating to events before the given timestamp.
The meaning of "unnecessary", and whether the limit is inclusive or exclusive both depend on the particular store. The store must implement the actual pruning logic in the doPrune method.
- Definition Classes
 - PrunableByTime
 
 -   final  def synchronized[T0](arg0: => T0): T0
- Definition Classes
 - AnyRef
 
 -    def toString(): String
- Definition Classes
 - AnyRef → Any
 
 -   final  def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.InterruptedException])
 
 -   final  def wait(arg0: Long): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.InterruptedException]) @native()
 
 -   final  def wait(): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.InterruptedException])