trait DbPrunableByTime[PartitionKey, E] extends PrunableByTime[E]
Mixin for an db store that stores the latest point in time when pruning has started or finished.
The pruning method of the store must use advancePruningTimestamp to signal the start end completion of each pruning.
- Self Type
- DbPrunableByTime[PartitionKey, E] with DbStore
- Alphabetic
- By Inheritance
- DbPrunableByTime
- PrunableByTime
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def doPrune(limit: CantonTimestamp)(implicit traceContext: TraceContext): EitherT[Future, E, Unit]
- Attributes
- protected[canton]
- Definition Classes
- PrunableByTime
- Annotations
- @VisibleForTesting()
- implicit abstract val ec: ExecutionContext
- Attributes
- protected[this]
- Definition Classes
- DbPrunableByTime → PrunableByTime
- abstract def partitionColumn: String
- Attributes
- protected[this]
- abstract def partitionKey: PartitionKey
- Attributes
- protected[this]
- abstract val processingTime: GaugeM[TimedLoadGauge, Double]
- Attributes
- protected
- abstract def pruning_status_table: String
The table name to store the pruning timestamp in.
The table name to store the pruning timestamp in. The table must define the following fields:
- partitionColumn primary key
phase
stores the com.digitalasset.canton.pruning.PruningPhasets
stores the com.digitalasset.canton.data.CantonTimestamp -
- Attributes
- protected[this]
- implicit abstract def setParameterDiscriminator: SetParameter[PartitionKey]
- Attributes
- protected[this]
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
- def advancePruningTimestamp(phase: PruningPhase, timestamp: CantonTimestamp)(implicit traceContext: TraceContext): EitherT[Future, E, Unit]
- Attributes
- protected[canton]
- Definition Classes
- DbPrunableByTime → PrunableByTime
- 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
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- 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, E, 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
- def pruningStatus(implicit traceContext: TraceContext): EitherT[Future, E, 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
- DbPrunableByTime → 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])