this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at master 44 lines 1.3 kB view raw
1defmodule Hobbes.BeginError do 2 @moduledoc """ 3 Raised when a transaction fails to get a read version. 4 """ 5 defexception [:message, :error] 6 7 @impl true 8 def exception([error: {:error, err}]) do 9 %__MODULE__{message: "begin failed with error: #{inspect(err)}", error: err} 10 end 11end 12 13defmodule Hobbes.CommitError do 14 @moduledoc """ 15 Raised when a transaction fails to commit. 16 """ 17 defexception [:message, :error, :read_version, :commit_version, :batch_index] 18 19 @impl true 20 def exception([error: {:error, err}, read_version: read_version, commit_version: commit_version, batch_index: batch_index]) do 21 %__MODULE__{message: "commit failed with error: #{inspect(err)}", error: err, read_version: read_version, commit_version: commit_version, batch_index: batch_index} 22 end 23end 24 25defmodule Hobbes.ReadError do 26 @moduledoc """ 27 Raised when a read fails. 28 """ 29 defexception [:message, :error] 30 31 @impl true 32 def exception([error: {:error, err}]) do 33 %__MODULE__{message: "read failed with error: #{inspect(err)}", error: err} 34 end 35end 36 37defmodule Hobbes.NoTransactionError do 38 defexception [:message] 39 40 @impl true 41 def exception([]) do 42 %__MODULE__{message: "reads and writes can only be performed within a transaction"} 43 end 44end