Packages

final case class CatchUpConfig(catchUpIntervalSkip: PositiveInt, nrIntervalsToTriggerCatchUp: PositiveInt) extends PrettyPrinting with Product with Serializable

The class specifies the catch-up parameters governing the catch-up mode of a participant lagging behind with its ACS commitments computation.

catchUpIntervalSkip

The number of reconciliation intervals that the participant skips in catch-up mode. A catch-up interval thus has a length of reconciliationInterval * catchUpIntervalSkip. All participants must catch up to the same timestamp. To ensure this, the interval count starts at EPOCH and gets incremented in catch-up intervals. For example, a reconciliationInterval of 5 seconds, and a catchUpIntervalSkip of 2 (intervals), when a participant receiving a valid commitment at 15 seconds with timestamp 20 seconds, will perform catch-up from 10 seconds to 20 seconds (skipping 15 seconds commitment).

nrIntervalsToTriggerCatchUp

The number of intervals a participant should lag behind in order to trigger catch-up mode. If a participant's current timestamp is behind the timestamp of valid received commitments by reconciliationInterval * catchUpIntervalSkip * nrIntervalsToTriggerCatchUp, then the participant triggers catch-up mode.

Exceptions thrown

java.lang.IllegalArgumentException when catchUpIntervalSkip * nrIntervalsToTriggerCatchUp overflows. ***** Parameter recommendations A high catchUpIntervalSkip outputs more commitments and is slower to catch-up. For equal catchUpIntervalSkip, a high nrIntervalsToTriggerCatchUp is less aggressive to trigger the catch-up mode. ***** Examples (5,2) and (2,5) both trigger the catch-up mode when the processor lags behind by at least 10 reconciliation intervals. The former catches up quicker, but computes fewer commitments, whereas the latter computes more commitments but is slower to catch-up.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CatchUpConfig
  2. Serializable
  3. Product
  4. Equals
  5. PrettyPrinting
  6. PrettyUtil
  7. ShowUtil
  8. ShowSyntax
  9. ToShowOps
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new CatchUpConfig(catchUpIntervalSkip: PositiveInt, nrIntervalsToTriggerCatchUp: PositiveInt)

    catchUpIntervalSkip

    The number of reconciliation intervals that the participant skips in catch-up mode. A catch-up interval thus has a length of reconciliationInterval * catchUpIntervalSkip. All participants must catch up to the same timestamp. To ensure this, the interval count starts at EPOCH and gets incremented in catch-up intervals. For example, a reconciliationInterval of 5 seconds, and a catchUpIntervalSkip of 2 (intervals), when a participant receiving a valid commitment at 15 seconds with timestamp 20 seconds, will perform catch-up from 10 seconds to 20 seconds (skipping 15 seconds commitment).

    nrIntervalsToTriggerCatchUp

    The number of intervals a participant should lag behind in order to trigger catch-up mode. If a participant's current timestamp is behind the timestamp of valid received commitments by reconciliationInterval * catchUpIntervalSkip * nrIntervalsToTriggerCatchUp, then the participant triggers catch-up mode.

    Exceptions thrown

    java.lang.IllegalArgumentException when catchUpIntervalSkip * nrIntervalsToTriggerCatchUp overflows. ***** Parameter recommendations A high catchUpIntervalSkip outputs more commitments and is slower to catch-up. For equal catchUpIntervalSkip, a high nrIntervalsToTriggerCatchUp is less aggressive to trigger the catch-up mode. ***** Examples (5,2) and (2,5) both trigger the catch-up mode when the processor lags behind by at least 10 reconciliation intervals. The former catches up quicker, but computes fewer commitments, whereas the latter computes more commitments but is slower to catch-up.

Type Members

  1. implicit class ShowAnyRefSyntax extends AnyRef
    Definition Classes
    ShowUtil
  2. implicit class ShowEitherSyntax[L, R] extends AnyRef

    Enables the syntax show"${myEither.showMerged}".

    Enables the syntax show"${myEither.showMerged}".

    Definition Classes
    ShowUtil
  3. implicit class ShowLengthLimitedStringSyntax extends StringOperators
    Definition Classes
    ShowUtil
  4. implicit class ShowLengthLimitedStringWrapperSyntax extends StringOperators
    Definition Classes
    ShowUtil
  5. implicit class ShowOptionSyntax[T] extends AnyRef
    Definition Classes
    ShowUtil
  6. implicit class ShowProductSyntax extends AnyRef
    Definition Classes
    ShowUtil
    Annotations
    @SuppressWarnings()
  7. implicit class ShowStringSyntax extends StringOperators
    Definition Classes
    ShowUtil
  8. implicit class ShowTraversableSyntax[T] extends AnyRef

    Enables syntax like show"Found several elements: ${myCollection.mkShow()}".

    Enables syntax like show"Found several elements: ${myCollection.mkShow()}".

    Definition Classes
    ShowUtil
  9. abstract class StringOperators extends AnyRef

    Enables syntax like show"This is a string: ${myString.doubleQuoted}" and show"This is a hash: ${myHash.readableHash}".

    Enables syntax like show"This is a string: ${myString.doubleQuoted}" and show"This is a hash: ${myHash.readableHash}".

    Definition Classes
    ShowUtil

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. def adHocPrettyInstance[T <: Product](implicit c: ClassTag[T]): Pretty[T]

    Use this as a temporary solution, to make the code compile during an ongoing migration.

    Use this as a temporary solution, to make the code compile during an ongoing migration. Drawbacks:

    • Instances of Pretty[T] are ignored.
    • No parameter names
    Definition Classes
    PrettyUtil
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. val catchUpIntervalSkip: PositiveInt
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  8. def customParam[T](getValue: (T) => String, cond: (T) => Boolean = (_: T) => true): (T) => Option[Tree]

    Use this if you need a custom representation of a parameter.

    Use this if you need a custom representation of a parameter. Do not use this to create lengthy strings, as line wrapping is not supported.

    Definition Classes
    PrettyUtil
  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  11. def indicateOmittedFields[T]: (T) => Option[Tree]

    Use this to indicate that you've omitted fields from pretty printing

    Use this to indicate that you've omitted fields from pretty printing

    Definition Classes
    PrettyUtil
  12. def isCatchUpEnabled(): Boolean
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  17. val nrIntervalsToTriggerCatchUp: PositiveInt
  18. def param[T, V](name: String, getValue: (T) => V, cond: (T) => Boolean = (_: T) => true)(implicit arg0: Pretty[V]): (T) => Option[Tree]

    A tree representing both parameter name and value.

    A tree representing both parameter name and value.

    Definition Classes
    PrettyUtil
  19. def paramIfDefined[T, V](name: String, getValue: (T) => Option[V])(implicit arg0: Pretty[V]): (T) => Option[Tree]
    Definition Classes
    PrettyUtil
  20. def paramIfNonEmpty[T, V <: IterableOnce[_]](name: String, getValue: (T) => V)(implicit arg0: Pretty[V]): (T) => Option[Tree]
    Definition Classes
    PrettyUtil
  21. def paramIfNotDefault[T, V](name: String, getValue: (T) => V, default: V)(implicit arg0: Pretty[V]): (T) => Option[Tree]

    A tree only written if not matching the default value

    A tree only written if not matching the default value

    Definition Classes
    PrettyUtil
  22. def paramIfTrue[T](label: String, getValue: (T) => Boolean): (T) => Option[Tree]
    Definition Classes
    PrettyUtil
  23. def paramWithoutValue[T](name: String, cond: (T) => Boolean = (_: T) => true): (T) => Option[Tree]

    A tree representing a parameter name without a parameter value.

    A tree representing a parameter name without a parameter value. Use this for parameters storing confidential or binary data.

    Definition Classes
    PrettyUtil
  24. def pretty: Pretty[CatchUpConfig]

    Indicates how to pretty print this instance.

    Indicates how to pretty print this instance. See PrettyPrintingTest for examples on how to implement this method.

    Definition Classes
    CatchUpConfigPrettyPrinting
  25. def prettyInfix[T]: PrettyInfixPartiallyApplied[T]
    Definition Classes
    PrettyUtil
  26. def prettyNode[T](label: String, children: (T) => Option[Tree]*): Pretty[T]

    A tree consisting of a labelled node with the given children.

    A tree consisting of a labelled node with the given children.

    Definition Classes
    PrettyUtil
  27. def prettyOfClass[T](getParamTrees: (T) => Option[Tree]*): Pretty[T]

    A tree representing the type name and parameter trees.

    A tree representing the type name and parameter trees.

    Definition Classes
    PrettyUtil
  28. def prettyOfObject[T <: Product]: Pretty[T]

    A tree presenting the type name only.

    A tree presenting the type name only. (E.g., for case objects.)

    Definition Classes
    PrettyUtil
  29. def prettyOfParam[T, V](getValue: (T) => V)(implicit arg0: Pretty[V]): Pretty[T]

    Use this to give a class with a singleton parameter the same pretty representation as the parameter.

    Use this to give a class with a singleton parameter the same pretty representation as the parameter.

    Definition Classes
    PrettyUtil
  30. def prettyOfString[T](toString: (T) => String): Pretty[T]

    Creates a pretty instance from a string function.

    Creates a pretty instance from a string function. Do not use this with lengthy strings, as line wrapping is not supported.

    Definition Classes
    PrettyUtil
  31. def productElementNames: Iterator[String]
    Definition Classes
    Product
  32. implicit final def showInterpolator(sc: StringContext): ShowInterpolator
    Definition Classes
    ShowSyntax
  33. implicit def showPretty[T](implicit arg0: Pretty[T]): Show[T]

    Enables the syntax show"This object is pretty: $myPrettyType".

    Enables the syntax show"This object is pretty: $myPrettyType".

    Definition Classes
    ShowUtil
  34. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  35. def toProtoV2: v2.CatchUpConfig
  36. implicit def toShow[A](target: A)(implicit tc: Show[A]): Ops[A]
    Definition Classes
    ToShowOps
  37. final def toString(): String

    Yields a readable string representation based on com.digitalasset.canton.logging.pretty.Pretty.DefaultPprinter.

    Yields a readable string representation based on com.digitalasset.canton.logging.pretty.Pretty.DefaultPprinter. Final to avoid accidental overwriting.

    Definition Classes
    PrettyPrinting → AnyRef → Any
  38. def unnamedParam[T, V](getValue: (T) => V, cond: (T) => Boolean = (_: T) => true)(implicit arg0: Pretty[V]): (T) => Option[Tree]

    A tree representing a parameter value without a parameter name.

    A tree representing a parameter value without a parameter name.

    Definition Classes
    PrettyUtil
  39. def unnamedParamIfDefined[T, V](getValue: (T) => Option[V])(implicit arg0: Pretty[V]): (T) => Option[Tree]
    Definition Classes
    PrettyUtil
  40. def unnamedParamIfNonEmpty[T, V <: IterableOnce[_]](getValue: (T) => V)(implicit arg0: Pretty[V]): (T) => Option[Tree]
    Definition Classes
    PrettyUtil
  41. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  42. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  43. 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
    Deprecated

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from PrettyPrinting

Inherited from PrettyUtil

Inherited from ShowUtil

Inherited from ShowSyntax

Inherited from ToShowOps

Inherited from AnyRef

Inherited from Any

Ungrouped