com.digitalasset.canton.synchronizer.sequencing.traffic.store
TrafficConsumedStore
Companion object TrafficConsumedStore
trait TrafficConsumedStore extends AutoCloseable
Maintains the history of traffic consumed by sequencer members.
- Alphabetic
- By Inheritance
- TrafficConsumedStore
- AutoCloseable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def close(): Unit
- Definition Classes
- AutoCloseable
- Annotations
- @throws(classOf[java.lang.Exception])
- abstract def deleteRecordsPastTimestamp(timestampExclusive: CantonTimestamp)(implicit traceContext: TraceContext): FutureUnlessShutdown[Unit]
Deletes all traffic consumed entries that greater than the provided timestamp (exclusive).
Deletes all traffic consumed entries that greater than the provided timestamp (exclusive). To be used by the crash recovery to reset the traffic consumed store to a state at watermark, right before the beginning of the block from which the sequencer will start rehydrating.
- abstract def lookup(member: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[TrafficConsumed]]
Looks up the traffic consumed entries for a member.
- abstract def lookupAt(member: Member, timestamp: CantonTimestamp)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[TrafficConsumed]]
Looks up the traffic consumed state at the exact timestamp for the member, if found.
- abstract def lookupLast(member: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[TrafficConsumed]]
Looks up the last traffic consumed for a member.
- abstract def lookupLatestBeforeInclusive(timestamp: CantonTimestamp)(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[TrafficConsumed]]
Looks up the latest traffic consumed for all members, that were sequenced before the given timestamp (inclusive).
- abstract def lookupLatestBeforeInclusiveForMember(member: Member, timestamp: CantonTimestamp)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[TrafficConsumed]]
Looks up the latest traffic consumed for a specific member, that was sequenced before the given timestamp (inclusive).
- abstract def pruneBelowExclusive(upToExclusive: CantonTimestamp)(implicit traceContext: TraceContext): FutureUnlessShutdown[String]
Deletes all traffic consumed entries, if their timestamp is strictly lower than the maximum existing timestamp that is lower or equal to the provided timestamp.
Deletes all traffic consumed entries, if their timestamp is strictly lower than the maximum existing timestamp that is lower or equal to the provided timestamp. In practice this means that we will keep enough to provide the correct traffic consumed for any timestamp above or equal the provided timestamp, even if that means not pruning the first timestamp below the provided one. Keeps at least the latest traffic consumed if it exists, even if it's in the pruning window.
- returns
text information about the data that was pruned
- abstract def store(trafficUpdates: Seq[TrafficConsumed])(implicit traceContext: TraceContext): FutureUnlessShutdown[Unit]
Stores the traffic consumed.
Stores the traffic consumed. Updates for which there is already a traffic consumed for that member with the same sequencing timestamp are ignored.
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]) @IntrinsicCandidate() @native()
- 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
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- 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])