Quiver.Error.H3DatagramError exception (quiver v0.3.0)

Copy Markdown View Source

Datagram send failed at the QUIC or HTTP/3 layer.

reason is one of:

  • :unknown_stream -- the bound H/3 stream is no longer tracked (typically a benign send-after-close race; class :transient)
  • :too_large -- payload exceeded the peer's advertised max_datagram_size; caller must shrink (class overridden to :invalid by the mapper)
  • :too_large_for_path -- current path MTU forbids this size (class :transient)
  • :congestion_limited -- sender's congestion controller is closed (class :transient)
  • Other atom -- forwarded from :quic_h3; class :transient

Summary

Types

reason()

@type reason() ::
  :unknown_stream
  | :too_large
  | :too_large_for_path
  | :congestion_limited
  | atom()

t()

@type t() :: Splode.Error.t()

Functions

exception(args)

@spec exception(opts :: Keyword.t()) :: %Quiver.Error.H3DatagramError{
  __exception__: true,
  bread_crumbs: term(),
  class: term(),
  path: term(),
  reason: term(),
  splode: term(),
  stacktrace: term(),
  vars: term()
}

Create an Elixir.Quiver.Error.H3DatagramError without raising it.

Keys

  • :reason