Packages

object LedgerApiErrors extends LedgerApiErrorGroup

Annotations
@Explanation(explanation = "Errors raised by or forwarded by the Ledger API.")
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LedgerApiErrors
  2. LedgerApiErrorGroup
  3. ErrorGroup
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class InterfaceViewUpgradeFailureWrapper(root: BaseError)(implicit errorLoggingContext: ErrorLoggingContext) extends DamlErrorWithDefiniteAnswer with Product with Serializable

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. val EarliestOffsetMetadataKey: String
  5. val LatestOffsetMetadataKey: String
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  10. implicit val errorClass: ErrorClass
    Definition Classes
    ErrorGroup
  11. val fullClassName: String
    Definition Classes
    ErrorGroup
  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  18. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  19. def toString(): String
    Definition Classes
    AnyRef → Any
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. object HeapMemoryOverLimit extends ErrorCode
    Annotations
    @Explanation(explanation = "This error happens when the JVM heap memory pool exceeds a pre-configured limit.") @Resolution(resolution = """The following actions can be taken:
    |1. Review the historical use of heap space by inspecting the metric given in the message.
    |2. Review the current heap space limits configured in the rate limiting configuration.
    |3. Try to space out requests that are likely to require a large amount of memory to process."""
    )
  24. object InternalError extends ErrorCode
    Annotations
    @Explanation(explanation = """This error occurs if there was an unexpected error in the Ledger API.""") @Resolution(resolution = "Contact support.")
  25. object MaximumNumberOfStreams extends ErrorCode
    Annotations
    @Explanation(explanation = "This error happens when the number of concurrent gRPC streaming requests exceeds the configured limit.") @Resolution(resolution = """The following actions can be taken:
    |1. Review the historical need for concurrent streaming by inspecting the metric given in the message.
    |2. Review the maximum streams limit configured in the rate limiting configuration.
    |3. Try to space out streaming requests such that they do not need to run in parallel with each other."""
    )
  26. object NoPreferredPackagesFound extends ErrorCode
    Annotations
    @Explanation(explanation = """This error occurs if the topology state of the participant's connected synchronizers cannot satisfy the vetting requirements provided in the request.""") @Resolution(resolution = """Inspect the error message and refine the request or retry again later. If the error persists, inform the involved counterparties about their invalid topology state.""")
  27. object NoVettedInterfaceImplementationPackage extends ErrorCode
    Annotations
    @Explanation(explanation = """The requested interface view for the template's package-name is unavailable due to a missing vetted package.
    |This could be due to a stale stream subscription or the deactivation of an interface implementation
    |resulting from the unvetting of its compatible packages."""
    )
    @Resolution(resolution = """Close and re-open the stream subscription to refresh the vetting state used for rendering interface views.
    |If the problem persists and it is unexpected, contact the participant operator."""
    )
  28. object ParticipantBackpressure extends ErrorCode
    Annotations
    @Explanation(explanation = """This error occurs when a participant rejects a command due to excessive load.
    |Load can be caused by the following factors:
    |1. when commands are submitted to the participant through its Ledger API,
    |2. when the participant receives validation requests from other participants through a connected synchronizer.
    |
    |In order to prevent the participant of being overloaded, it will start to reject commands once a
    |certain load threshold is reached. The main threshold is the number of in-flight validation requests
    |that the participant is currently processing. These requests can be caused either by this participant
    |or by other participants.
    |
    |For a submission to be counted as an in-flight validation request, the participant must first
    |observe its sequencing, which means that there is a delay between the submission and the submitted
    |command to be counted towards the currently in-flight validation requests. In order to avoid an
    |overload situation by a sudden burst of commands, the participant will also enforce a rate limit
    |before a submission is accepted for interpretation. This rate limit can be configured with a steady
    |state rate and a burst factor. The burst factor is a multiplier of the steady state rate that allows
    |for a certain number of commands to be submitted in a burst before the rate limit kicks in.
    |
    |As an example, with a rate limit of 1000 commands per second and a burst factor of 2, the rate limit
    |will kick in once 2000 commands have been submitted on top of the commands allowed by the rate limit.
    |
    |"""
    )
    @Resolution(resolution = """Verify the limits configured, the load and the command latency on the participant and adjust if necessary.
    |If the participant is highly loaded, ensure that your application waits some time with the resubmission, preferably with some backoff factor.
    |If possible, ask other participants to send fewer requests; the synchronizer operator can enforce this by imposing a rate limit."""
    )
  29. object ThreadpoolOverloaded extends ErrorCode
    Annotations
    @Explanation(explanation = "This happens when the rate of submitted gRPC requests requires more CPU or database power than is available.") @Resolution(resolution = """The following actions can be taken:
    |Here the 'queue size' for the threadpool is considered as reported by the executor itself.
    |1. Review the historical 'queue size' growth by inspecting the metric given in the message.
    |2. Review the maximum 'queue size' limits configured in the rate limiting configuration.
    |3. Try to space out requests that are likely to require a lot of CPU or database power.
    """
    )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from LedgerApiErrorGroup

Inherited from ErrorGroup

Inherited from AnyRef

Inherited from Any

Ungrouped