com.digitalasset.canton.synchronizer.sequencer.SequencerConfig
SequencerHighAvailabilityConfig
Companion object SequencerHighAvailabilityConfig
final case class SequencerHighAvailabilityConfig(enabled: Option[Boolean] = None, totalNodeCount: PositiveInt = PositiveInt.tryCreate(10), keepAliveInterval: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofMillis(50L), onlineCheckInterval: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(5L), offlineDuration: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(8L), connectionPool: DbLockedConnectionPoolConfig = DbLockedConnectionPoolConfig(), exclusiveStorage: DatabaseSequencerExclusiveStorageConfig = DatabaseSequencerExclusiveStorageConfig()) extends EnterpriseOnlyCantonConfigValidation with Product with Serializable
Configuration for how many sequencers are concurrently operating within the synchronizer.
- enabled
Set to Some(true) to enable HA for the sequencer. If None it will be enabled if the storage supports replication.
- totalNodeCount
how many sequencer writers will there ever be in this synchronizer. recommend setting to a value larger than the current topology to allow for expansion.
- keepAliveInterval
how frequently will we ensure the sequencer watermark is updated to ensure it still appears alive
- onlineCheckInterval
how frequently should this sequencer check that nodes are still online
- offlineDuration
how long should a sequencer watermark be lagging for it to be flagged as offline
- connectionPool
configuration of the write connection pool used by an HA sequencer instance.
- Alphabetic
- By Inheritance
- SequencerHighAvailabilityConfig
- Serializable
- Product
- Equals
- EnterpriseOnlyCantonConfigValidation
- PredicatedCantonConfigValidation
- CustomCantonConfigValidation
- CantonConfigValidation
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new SequencerHighAvailabilityConfig(enabled: Option[Boolean] = None, totalNodeCount: PositiveInt = PositiveInt.tryCreate(10), keepAliveInterval: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofMillis(50L), onlineCheckInterval: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(5L), offlineDuration: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(8L), connectionPool: DbLockedConnectionPoolConfig = DbLockedConnectionPoolConfig(), exclusiveStorage: DatabaseSequencerExclusiveStorageConfig = DatabaseSequencerExclusiveStorageConfig())
- enabled
Set to Some(true) to enable HA for the sequencer. If None it will be enabled if the storage supports replication.
- totalNodeCount
how many sequencer writers will there ever be in this synchronizer. recommend setting to a value larger than the current topology to allow for expansion.
- keepAliveInterval
how frequently will we ensure the sequencer watermark is updated to ensure it still appears alive
- onlineCheckInterval
how frequently should this sequencer check that nodes are still online
- offlineDuration
how long should a sequencer watermark be lagging for it to be flagged as offline
- connectionPool
configuration of the write connection pool used by an HA sequencer instance.
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
- final def allowThisInCommunity: Boolean
- Attributes
- protected
- Definition Classes
- EnterpriseOnlyCantonConfigValidation → PredicatedCantonConfigValidation
- def allowThisInEnterprise: Boolean
- Attributes
- protected
- Definition Classes
- PredicatedCantonConfigValidation
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- val connectionPool: DbLockedConnectionPoolConfig
- def doValidate(edition: CantonEdition): Seq[CantonConfigValidationError]
Returns all validation errors that are specific to this Canton configuration class.
Returns all validation errors that are specific to this Canton configuration class. Successful validation should return an empty sequence.
Validation errors of subconfigurations should not be reported by this method, but via the type class derivation.
- Attributes
- protected
- Definition Classes
- PredicatedCantonConfigValidation → CustomCantonConfigValidation
- val enabled: Option[Boolean]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val exclusiveStorage: DatabaseSequencerExclusiveStorageConfig
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- lazy val isEnabled: Boolean
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val keepAliveInterval: NonNegativeFiniteDuration
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- val offlineDuration: NonNegativeFiniteDuration
- val onlineCheckInterval: NonNegativeFiniteDuration
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toOnlineSequencerCheckConfig: OnlineSequencerCheckConfig
- val totalNodeCount: PositiveInt
- final def validate[T >: SequencerHighAvailabilityConfig.this.type](edition: CantonEdition)(implicit validator: CantonConfigValidator[T]): Either[NonEmpty[Seq[CantonConfigValidationError]], Unit]
- Definition Classes
- CantonConfigValidation
- 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])