case class ParticipantStoreConfig(maxItemsInSqlClause: PositiveNumeric[Int] = PositiveNumeric.tryCreate(100), maxPruningBatchSize: PositiveNumeric[Int] = PositiveNumeric.tryCreate(1000), ledgerApiPruningBatchSize: PositiveNumeric[Int] = PositiveNumeric.tryCreate(50000), pruningMetricUpdateInterval: Option[PositiveDurationSeconds] = config.PositiveDurationSeconds.ofHours(1L).some, acsPruningInterval: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(60), dbBatchAggregationConfig: BatchAggregatorConfig = BatchAggregatorConfig.Batching()) extends Product with Serializable

Parameters for the participant node's stores

maxItemsInSqlClause

maximum number of items to place in sql "in clauses"

maxPruningBatchSize

maximum number of events to prune from a participant at a time, used to break up canton participant-internal batches

ledgerApiPruningBatchSize

Number of events to prune from the ledger api server index-database at a time during automatic background pruning. Canton-internal store pruning happens at the smaller batch size of "maxPruningBatchSize" to minimize memory usage whereas ledger-api-server index-db pruning needs sufficiently large batches to amortize the database overhead of "skipping over" active contracts.

pruningMetricUpdateInterval

How frequently to update the max-event-age pruning progress metric in the background. A setting of None disables background metric updating.

acsPruningInterval

How often to prune the ACS journal in the background. A very high interval will let the journal grow larger and eventually slow queries down. A very low interval may cause a high load on the journal table and the DB. The default is 60 seconds. A domain's reconciliation interval also limits the frequency of background pruning. Setting the pruning interval below the reconciliation interval doesn't not increase the frequency further.

dbBatchAggregationConfig

Batching configuration for Db queries

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ParticipantStoreConfig
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ParticipantStoreConfig(maxItemsInSqlClause: PositiveNumeric[Int] = PositiveNumeric.tryCreate(100), maxPruningBatchSize: PositiveNumeric[Int] = PositiveNumeric.tryCreate(1000), ledgerApiPruningBatchSize: PositiveNumeric[Int] = PositiveNumeric.tryCreate(50000), pruningMetricUpdateInterval: Option[PositiveDurationSeconds] = config.PositiveDurationSeconds.ofHours(1L).some, acsPruningInterval: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(60), dbBatchAggregationConfig: BatchAggregatorConfig = BatchAggregatorConfig.Batching())

    maxItemsInSqlClause

    maximum number of items to place in sql "in clauses"

    maxPruningBatchSize

    maximum number of events to prune from a participant at a time, used to break up canton participant-internal batches

    ledgerApiPruningBatchSize

    Number of events to prune from the ledger api server index-database at a time during automatic background pruning. Canton-internal store pruning happens at the smaller batch size of "maxPruningBatchSize" to minimize memory usage whereas ledger-api-server index-db pruning needs sufficiently large batches to amortize the database overhead of "skipping over" active contracts.

    pruningMetricUpdateInterval

    How frequently to update the max-event-age pruning progress metric in the background. A setting of None disables background metric updating.

    acsPruningInterval

    How often to prune the ACS journal in the background. A very high interval will let the journal grow larger and eventually slow queries down. A very low interval may cause a high load on the journal table and the DB. The default is 60 seconds. A domain's reconciliation interval also limits the frequency of background pruning. Setting the pruning interval below the reconciliation interval doesn't not increase the frequency further.

    dbBatchAggregationConfig

    Batching configuration for Db queries

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val acsPruningInterval: NonNegativeFiniteDuration
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  7. val dbBatchAggregationConfig: BatchAggregatorConfig
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. val ledgerApiPruningBatchSize: PositiveNumeric[Int]
  12. val maxItemsInSqlClause: PositiveNumeric[Int]
  13. val maxPruningBatchSize: PositiveNumeric[Int]
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  17. def productElementNames: Iterator[String]
    Definition Classes
    Product
  18. val pruningMetricUpdateInterval: Option[PositiveDurationSeconds]
  19. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped