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
- val adminWorkflow: AdminWorkflowConfig
- val contractIdSeeding: Seeding
- val enableCausalityTracking: Boolean
- val indexer: IndexerConfig
- val maxUnzippedDarSize: Int
- val minimumProtocolVersion: Option[ParticipantProtocolVersion]
- val partyChangeNotification: PartyNotificationConfig
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val stores: ParticipantStoreConfig
- val transferTimeProofFreshnessProportion: NonNegativeInt
- val uniqueContractKeys: Boolean
- val unsafeEnableDamlLfDevVersion: Boolean
- val warnIfOverloadedFor: Option[NonNegativeFiniteDuration]
- val willCorruptYourSystemDevVersionSupport: Boolean