class InMemorySequencerStateManagerStore extends SequencerStateManagerStore with NamedLogging
- Alphabetic
- By Inheritance
- InMemorySequencerStateManagerStore
- NamedLogging
- SequencerStateManagerStore
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new InMemorySequencerStateManagerStore(loggerFactory: NamedLoggerFactory)
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
- def acknowledge(member: Member, timestamp: CantonTimestamp)(implicit traceContext: TraceContext): Future[Unit]
Write an acknowledgement that member has processed earlier timestamps.
Write an acknowledgement that member has processed earlier timestamps. Only the latest timestamp needs to be stored. Earlier timestamps can be overwritten. Acknowledgements of earlier timestamps should be ignored.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def addEvents(events: MemberSignedEvents, trafficSate: Map[Member, TrafficState])(implicit traceContext: TraceContext): Future[Unit]
Add a new events to the sequencer store.
Add a new events to the sequencer store. Callers must ensure that all members receiving a counter update have been registered and that the counter values are correct. Callers must also ensure that the timestamp is correct and later than all prior events as this is also not validated by all store implementations. Counter updates for invalid counter values (<0) will cause a java.lang.IllegalArgumentException to be throw. Implementations may throw a java.lang.IllegalArgumentException if a counter update is incorrect (not following the current head), but may not if this is not possible to efficiently do (like with database persistence that would require executing a query to check). Implementations should ensure that all events are written atomically (or none written if a failure is hit).
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def addMember(member: Member, addedAt: CantonTimestamp)(implicit traceContext: TraceContext): Future[Unit]
Adds a new member to the sequencer.
Adds a new member to the sequencer. Callers are expected to ensure that the member is not already registered.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def disableMember(member: Member)(implicit traceContext: TraceContext): Future[Unit]
Prevents member from sending and reading from the sequencer, and allows unread data for this member to be pruned.
Prevents member from sending and reading from the sequencer, and allows unread data for this member to be pruned. It however won't stop any sends addressed to this member.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- implicit def errorLoggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
- Attributes
- protected
- Definition Classes
- NamedLogging
- def fetchLowerBound()(implicit traceContext: TraceContext): Future[Option[CantonTimestamp]]
Fetch the lower bound of events that can be read.
Fetch the lower bound of events that can be read. Returns
None
if all events can be read.- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def getInitialTopologySnapshotTimestamp(implicit traceContext: TraceContext): Future[Option[CantonTimestamp]]
Retrieve the timestamp of the initial topology snapshot if available.
Retrieve the timestamp of the initial topology snapshot if available.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def isEnabled(member: Member)(implicit traceContext: TraceContext): Future[Boolean]
Check whether the member is enabled.
Check whether the member is enabled. Currently used when receiving a request for reading.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def latestAcknowledgements()(implicit traceContext: TraceContext): Future[Map[Member, CantonTimestamp]]
Return the latest acknowledgements for all members
Return the latest acknowledgements for all members
- Attributes
- protected[integrations.state]
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def logger: TracedLogger
- Attributes
- protected
- Definition Classes
- NamedLogging
- val loggerFactory: NamedLoggerFactory
- Attributes
- protected
- Definition Classes
- InMemorySequencerStateManagerStore → NamedLogging
- implicit def namedLoggingContext(implicit traceContext: TraceContext): NamedLoggingContext
- 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() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def numberOfEvents()(implicit traceContext: TraceContext): Future[Long]
- Attributes
- protected[integrations.state]
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def prune(requestedTimestamp: CantonTimestamp)(implicit traceContext: TraceContext): Future[PruningResult]
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def pruneSync(requestedTimestamp: CantonTimestamp): PruningResult
- Annotations
- @SuppressWarnings()
- def readAtBlockTimestamp(timestamp: CantonTimestamp)(implicit traceContext: TraceContext): Future[EphemeralState]
Rehydrate the sequencer EphemeralState from the backing persisted store
Rehydrate the sequencer EphemeralState from the backing persisted store
- timestamp
The timestamp for which the EphemeralState is computed
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def readRange(member: Member, startInclusive: SequencerCounter, endExclusive: SequencerCounter)(implicit traceContext: TraceContext): Source[OrdinarySerializedEvent, NotUsed]
Extract a range of events for a member.
Extract a range of events for a member. It is expected that the sequencer will validate requests against its current state so read requests for unregistered members or counter ranges that do not exist should just return an empty source.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- Exceptions thrown
java.lang.IllegalArgumentException
if startInclusive is not less than endExclusive
- def saveLowerBound(ts: CantonTimestamp, maybeOnboardingTopologyTimestamp: Option[CantonTimestamp])(implicit traceContext: TraceContext): EitherT[Future, SaveLowerBoundError, Unit]
Save an updated lower bound of events that can be read along with the optional timestamp of the initial onboarding topology snapshot.
Save an updated lower bound of events that can be read along with the optional timestamp of the initial onboarding topology snapshot.
The lower bound of events ts must be equal or greater than any prior set lower bound. The value of maybeOnboardingTopologyTimestamp is only set if nonEmpty and only on the initial call.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def status()(implicit traceContext: TraceContext): Future[InternalSequencerPruningStatus]
Build a status object representing the current state of the sequencer.
Build a status object representing the current state of the sequencer.
- Definition Classes
- InMemorySequencerStateManagerStore → SequencerStateManagerStore
- def statusSync(): InternalSequencerPruningStatus
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def unregisterUnauthenticatedMember(member: UnauthenticatedMemberId): Future[Unit]
- 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])