c

com.digitalasset.canton.participant.config

ParticipantNodeParameterConfig

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.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ParticipantNodeParameterConfig
  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 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

  1. val adminWorkflow: AdminWorkflowConfig
  2. val contractIdSeeding: Seeding
  3. val enableCausalityTracking: Boolean
  4. val indexer: IndexerConfig
  5. val maxUnzippedDarSize: Int
  6. val minimumProtocolVersion: Option[ParticipantProtocolVersion]
  7. val partyChangeNotification: PartyNotificationConfig
  8. def productElementNames: Iterator[String]
    Definition Classes
    Product
  9. val stores: ParticipantStoreConfig
  10. val transferTimeProofFreshnessProportion: NonNegativeInt
  11. val uniqueContractKeys: Boolean
  12. val unsafeEnableDamlLfDevVersion: Boolean
  13. val warnIfOverloadedFor: Option[NonNegativeFiniteDuration]
  14. val willCorruptYourSystemDevVersionSupport: Boolean