case class ParticipantNodeParameterConfig(adminWorkflow: AdminWorkflowConfig = AdminWorkflowConfig(), partyChangeNotification: PartyNotificationConfig = PartyNotificationConfig.ViaDomain, maxUnzippedDarSize: Int = 1024 * 1024 * 1024, contractIdSeeding: Seeding = Seeding.Strong, stores: ParticipantStoreConfig = ParticipantStoreConfig(), indexer: IndexerConfig = IndexerConfig(), transferTimeProofFreshnessProportion: NonNegativeInt = NonNegativeInt.tryCreate(3), minimumProtocolVersion: Option[ParticipantProtocolVersion] = None, uniqueContractKeys: Boolean = true, enableCausalityTracking: Boolean = false, unsafeEnableDamlLfDevVersion: Boolean = false, willCorruptYourSystemDevVersionSupport: Boolean = false, warnIfOverloadedFor: Option[NonNegativeFiniteDuration] = Some( NonNegativeFiniteDuration.ofSeconds(20) )) extends Product with Serializable
General participant node parameters
- adminWorkflow
Configuration options for Canton admin workflows
- partyChangeNotification
Determines how eagerly the participant nodes notify the ledger api of party changes. By default ensure that parties are added via at least one domain before ACKing party creation to ledger api server indexer. This not only avoids flakiness in tests, but reflects that a party is not actually usable in canton until it's available through at least one domain.
- maxUnzippedDarSize
maximum allowed size of unzipped DAR files (in bytes) the participant can accept for uploading. Defaults to 1GB.
- contractIdSeeding
test-only way to override the contract-id seeding scheme. Must be Strong in production (and Strong is the default). Only configurable to reduce the amount of secure random numbers consumed by tests and to avoid flaky timeouts during continuous integration. The following specialized participant node performance tuning parameters may be grouped once a more final set of configs emerges.
- indexer
parameters how the participant populates the index db used to serve the ledger api
- transferTimeProofFreshnessProportion
Proportion of the target domain exclusivity timeout that is used as a freshness bound when requesting a time proof. Setting to 3 means we'll take a 1/3 of the target domain exclusivity timeout and potentially we reuse a recent timeout if one exists within that bound, otherwise a new time proof will be requested. Setting to zero will disable reusing recent time proofs and will instead always fetch a new proof.
- minimumProtocolVersion
The minimum protocol version that this participant will speak when connecting to a domain
- uniqueContractKeys
Whether the participant can connect only to a single domain that has com.digitalasset.canton.protocol.StaticDomainParameters.uniqueContractKeys set
- unsafeEnableDamlLfDevVersion
If set to true (default false), packages referring to the
dev
LF version can be used with Canton.- willCorruptYourSystemDevVersionSupport
If set to true, development protocol versions (and database schemas) will be supported. Do NOT use this in production, as it will break your system.
- warnIfOverloadedFor
If all incoming commands have been rejected due to PARTICIPANT_BACKPRESSURE during this interval, the participant will log a warning.
- Alphabetic
- By Inheritance
- ParticipantNodeParameterConfig
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ParticipantNodeParameterConfig(adminWorkflow: AdminWorkflowConfig = AdminWorkflowConfig(), partyChangeNotification: PartyNotificationConfig = PartyNotificationConfig.ViaDomain, maxUnzippedDarSize: Int = 1024 * 1024 * 1024, contractIdSeeding: Seeding = Seeding.Strong, stores: ParticipantStoreConfig = ParticipantStoreConfig(), indexer: IndexerConfig = IndexerConfig(), transferTimeProofFreshnessProportion: NonNegativeInt = NonNegativeInt.tryCreate(3), minimumProtocolVersion: Option[ParticipantProtocolVersion] = None, uniqueContractKeys: Boolean = true, enableCausalityTracking: Boolean = false, unsafeEnableDamlLfDevVersion: Boolean = false, willCorruptYourSystemDevVersionSupport: Boolean = false, warnIfOverloadedFor: Option[NonNegativeFiniteDuration] = Some(
NonNegativeFiniteDuration.ofSeconds(20)
))
- adminWorkflow
Configuration options for Canton admin workflows
- partyChangeNotification
Determines how eagerly the participant nodes notify the ledger api of party changes. By default ensure that parties are added via at least one domain before ACKing party creation to ledger api server indexer. This not only avoids flakiness in tests, but reflects that a party is not actually usable in canton until it's available through at least one domain.
- maxUnzippedDarSize
maximum allowed size of unzipped DAR files (in bytes) the participant can accept for uploading. Defaults to 1GB.
- contractIdSeeding
test-only way to override the contract-id seeding scheme. Must be Strong in production (and Strong is the default). Only configurable to reduce the amount of secure random numbers consumed by tests and to avoid flaky timeouts during continuous integration. The following specialized participant node performance tuning parameters may be grouped once a more final set of configs emerges.
- indexer
parameters how the participant populates the index db used to serve the ledger api
- transferTimeProofFreshnessProportion
Proportion of the target domain exclusivity timeout that is used as a freshness bound when requesting a time proof. Setting to 3 means we'll take a 1/3 of the target domain exclusivity timeout and potentially we reuse a recent timeout if one exists within that bound, otherwise a new time proof will be requested. Setting to zero will disable reusing recent time proofs and will instead always fetch a new proof.
- minimumProtocolVersion
The minimum protocol version that this participant will speak when connecting to a domain
- uniqueContractKeys
Whether the participant can connect only to a single domain that has com.digitalasset.canton.protocol.StaticDomainParameters.uniqueContractKeys set
- unsafeEnableDamlLfDevVersion
If set to true (default false), packages referring to the
dev
LF version can be used with Canton.- willCorruptYourSystemDevVersionSupport
If set to true, development protocol versions (and database schemas) will be supported. Do NOT use this in production, as it will break your system.
- warnIfOverloadedFor
If all incoming commands have been rejected due to PARTICIPANT_BACKPRESSURE during this interval, the participant will log a warning.
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
- val adminWorkflow: AdminWorkflowConfig
- 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()
- val contractIdSeeding: Seeding
- val enableCausalityTracking: Boolean
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- val indexer: IndexerConfig
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val maxUnzippedDarSize: Int
- val minimumProtocolVersion: Option[ParticipantProtocolVersion]
- 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()
- val partyChangeNotification: PartyNotificationConfig
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val stores: ParticipantStoreConfig
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val transferTimeProofFreshnessProportion: NonNegativeInt
- val uniqueContractKeys: Boolean
- val unsafeEnableDamlLfDevVersion: Boolean
- 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])
- val warnIfOverloadedFor: Option[NonNegativeFiniteDuration]
- val willCorruptYourSystemDevVersionSupport: Boolean