ash icon indicating copy to clipboard operation
ash copied to clipboard

Trying to load an invalid nested field doesn't unwrap the error correctly

Open axelson opened this issue 4 years ago • 0 comments

Describe the bug Trying to load an invalid nested field doesn't unwrap the error correctly

To Reproduce

      Ash.Query.load(Item, tracks: [fields: [field_values: :values]])

field_values should be field_value and :values should be value

The above query results in this error when ran via MyApp.API.read!

  • [:side_load] - "unknown error: {:error, %Ash.Error.SideLoad.InvalidQuery{changeset: nil, class: :invalid, path: [], query: #Ash.Query<resource: GenTracker.Schemas.Track, errors: [%Ash.Error.Unknown{changeset: nil, class: :unknown, error: "unknown error: {:error, %Ash.Error.SideLoad.InvalidQuery{changeset: nil, class: :invalid, path: [], query: #Ash.Query<resource: GenTracker.Schemas.Field, errors: [%Ash.Error.Unknown{changeset: nil, class: :unknown, error: \"unknown error: {:error, %Ash.Error.SideLoad.InvalidQuery{changeset: nil, class: :invalid, path: [], query: #Ash.Query<resource: GenTracker.Schemas.FieldValue, errors: [%Ash.Error.Unknown{changeset: nil, class: :unknown, error: \\\"load: Could not load :values\\\", errors: nil, field: nil, path: [:load], query: nil, stacktrace: #Stacktrace<>, stacktraces?: nil, vars: []}]>, side_load_path: [:field_value], stacktrace: #Stacktrace<>, vars: []}}\", errors: nil, field: nil, path: [:side_load], query: nil, stacktrace: #Stacktrace<>, stacktraces?: nil, vars: []}]>, side_load_path: [:fields], stacktrace: #Stacktrace<>, vars: []}}", errors: nil, field: nil, path: [:side_load], query: nil, stacktrace: #Stacktrace<>, stacktraces?: nil, vars: []}]>, side_load_path: [:tracks], stacktrace: #Stacktrace<>, vars: []}}"

Expected behavior An unwrapped error to be displayed instead

** Runtime

  • Elixir version
  • Erlang version
  • OS
  • Ash version ash 1.36.17
  • ash_postgres 0.35.4

axelson avatar Mar 22 '21 06:03 axelson