User SignUp is broken since version 0.9.5+ (Email not sending) #49

Closed
opened 2024-06-09 06:58:26 -04:00 by aaron_nad · 7 comments

Hi,

I have tested the user registration on 0.9.5, 0.9.6, 0.9.9 and all are broken. Error message posted below.

I downgraded to 0.9.1 and i can get the email to send out successfully.
This is the log from the successful sending on Cannery 0.9.1 and postrgres:13

10:53:21.223 request_id=F9dQmRG88mdbQEwAAAAi [info] HEAD /
10:53:21.232 request_id=F9dQmRG88mdbQEwAAAAi [info] Sent 200 in 9ms
10:53:29.631 request_id=F9dQmwby8mii7o8AAANh [info] GET /users/register
10:53:29.639 request_id=F9dQmwby8mii7o8AAANh [info] Sent 200 in 7ms
10:53:31.217 request_id=F9dQm2VtY5WbBcoAAAOh [info] HEAD /
10:53:31.223 request_id=F9dQm2VtY5WbBcoAAAOh [info] Sent 200 in 6ms
10:53:39.044 [info] Started oban job
10:53:39.053 [error] [__exception__: true, __struct__: Ecto.NoResultsError, message: "expected at least one result but got none in query:\n\nfrom u0 in Cannery.Accounts.User,\n  where: u0.id == ^\"ab8b4838-290a-45aa-a973-1b8e863e5954\"\n"]
10:53:40.831 request_id=F9dQnaKEZ2fF-VYAAAQh [info] POST /users/register
10:53:41.231 request_id=F9dQnbpUOoK6EQoAAARh [info] HEAD /
10:53:41.237 request_id=F9dQnbpUOoK6EQoAAARh [info] Sent 200 in 6ms
10:53:41.260 request_id=F9dQnaKEZ2fF-VYAAAQh [info] Sent 302 in 428ms
10:53:41.272 [info] Started oban job
10:53:41.363 [warning] Description: 'Authenticity is not established by certificate path validation'
     Reason: 'Option {verify, verify_peer} and cacertfile/cacerts is missing'

10:53:41.506 request_id=F9dQncq7zIzf3DoAAATh [info] GET /users/log_in
10:53:41.511 request_id=F9dQncq7zIzf3DoAAATh [info] Sent 200 in 4ms
10:53:42.726 [info] Finished oban job

When trying to get an invite sent out the oban_logger process crashes with the Email.worker failing.
Trying to restart the Cannery Application instantly crashes this process as well, below is the error log

10:44:01.660 request_id=F9dQFsk5A_TZUaEABH6B [info] HEAD /
10:44:01.677 request_id=F9dQFsk5A_TZUaEABH6B [info] Sent 200 in 17ms
10:44:09.789 [notice] SIGTERM received - shutting down

10:44:09.819 [info] Shutting down 2 sockets in 1 rounds of 2000ms
10:44:09.847 [info] Postgrex.Protocol (#PID<0.2021.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:09.847 [info] Postgrex.Protocol (#PID<0.2023.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:09.847 [info] Postgrex.Protocol (#PID<0.2020.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:09.849 [info] Postgrex.Protocol (#PID<0.2015.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:09.849 [info] Postgrex.Protocol (#PID<0.2022.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:09.849 [info] Postgrex.Protocol (#PID<0.2018.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:09.849 [info] Postgrex.Protocol (#PID<0.2019.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:09.850 [info] Postgrex.Protocol (#PID<0.2014.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown}
10:44:15.535 [info] Running CanneryWeb.Endpoint with cowboy 2.10.0 at :::4000 (http)
10:44:15.539 [info] Access CanneryWeb.Endpoint at https://cannery.domain.tld
10:44:15.583 [info] Migrations already up
10:44:17.780 [info] CONNECTED TO Phoenix.LiveView.Socket in 41µs
  Transport: :websocket
  Serializer: Phoenix.Socket.V2.JSONSerializer
  Parameters: %{"_csrf_token" => "HVIFMzUWFxMGQFE3ESQ1M14pEFQdG0obtapPcFtbQ24PXWo_6xufHN2B", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://cannery.domain.tld/css/app-95b4feae40bef5232368882ae0f132db.css?vsn=d", "1" => "https://cannery.domain.tld/js/app-4963fe5096debd403b662e4696b92148.js?vsn=d"}, "vsn" => "2.0.0"}
10:44:17.914 [info] CONNECTED TO Phoenix.LiveView.Socket in 64µs
  Transport: :websocket
  Serializer: Phoenix.Socket.V2.JSONSerializer
  Parameters: %{"_csrf_token" => "GXgkNyYEKzk7OlAyCkA8HTI3Lm0zOgk7pKQTpTHHlH5UC3fqZfK_foqb", "_live_referer" => "undefined", "_mounts" => "18", "_track_static" => %{"0" => "https://cannery.domain.tld/css/app-95b4feae40bef5232368882ae0f132db.css?vsn=d", "1" => "https://cannery.domain.tld/js/app-4963fe5096debd403b662e4696b92148.js?vsn=d"}, "vsn" => "2.0.0"}
10:44:21.635 request_id=F9dQG2_TrdgkmEYAAAKi [info] HEAD /
10:44:21.641 request_id=F9dQG2_TrdgkmEYAAAKi [info] Sent 200 in 5ms
10:44:22.609 [info] Started oban job: {
  "job": {
    "args": {
      "attrs": {
        "url": "https://cannery.domain.tld/users/confirm/z3syV-t8OqbhkjifKkDsNWwOiiUFnM3B4LqcvzEM3wk"
      },
      "email": "welcome",
      "user_id": "cb3e85a8-0e5e-471d-a162-82a9c6909aee"
    },
    "id": 12,
    "meta": {},
    "queue": "mailers",
    "worker": "Cannery.EmailWorker"
  },
  "measurements": {
    "system_time": 1717929862608766436
  }
}
10:44:22.644 [error] Handler "oban-logger" has failed and has been detached. Class=:error
Reason=%Protocol.UndefinedError{
  protocol: String.Chars,
  value: %Oban.PerformError{
    message: "Cannery.EmailWorker failed with {:error, {:retries_exceeded, {:network_failure, ~c\"<ip address>\", {:error, {:options, :incompatible, [verify: :verify_peer, cacerts: :undefined]}}}}}",
    reason: {:error,
     {:retries_exceeded,
      {:network_failure, ~c"209.85.202.108",
       {:error,
        {:options, :incompatible, [verify: :verify_peer, cacerts: :undefined]}}}}}
  },
  description: ""
}
Stacktrace=[
  {String.Chars, :impl_for!, 1, [file: ~c"lib/string/chars.ex", line: 3]},
  {String.Chars, :to_string, 1, [file: ~c"lib/string/chars.ex", line: 22]},
  {Cannery.Logger, :handle_event, 4,
   [file: ~c"lib/cannery/logger.ex", line: 17]},
  {:telemetry, :"-execute/3-fun-0-", 4,
   [file: ~c"/app/deps/telemetry/src/telemetry.erl", line: 160]},
  {:lists, :foreach_1, 2, [file: ~c"lists.erl", line: 1686]},
  {Oban.Queue.Executor, :emit_event, 1,
   [file: ~c"lib/oban/queue/executor.ex", line: 270]},
  {Oban.Queue.Executor, :"-call/1-fun-0-", 1,
   [file: ~c"lib/oban/queue/executor.ex", line: 81]},
  {Oban.Backoff, :with_retry, 3, [file: ~c"lib/oban/backoff.ex", line: 106]}
]

10:44:31.625 request_id=F9dQHcNGd97W3mMAAADj [info] HEAD /
10:44:31.634 request_id=F9dQHcNGd97W3mMAAADj [info] Sent 200 in 8ms
10:44:41.617 request_id=F9dQIBbS0QydE4MAAAAB [info] HEAD /
10:44:41.623 request_id=F9dQIBbS0QydE4MAAAAB [info] Sent 200 in 5ms

The all downgrades and upgrades were tested within 30 mins of each other to find which version enabled the email sign up to work.

Hi, I have tested the user registration on 0.9.5, 0.9.6, 0.9.9 and all are broken. Error message posted below. I downgraded to 0.9.1 and i can get the email to send out successfully. This is the log from the successful sending on Cannery 0.9.1 and postrgres:13 ``` 10:53:21.223 request_id=F9dQmRG88mdbQEwAAAAi [info] HEAD / 10:53:21.232 request_id=F9dQmRG88mdbQEwAAAAi [info] Sent 200 in 9ms 10:53:29.631 request_id=F9dQmwby8mii7o8AAANh [info] GET /users/register 10:53:29.639 request_id=F9dQmwby8mii7o8AAANh [info] Sent 200 in 7ms 10:53:31.217 request_id=F9dQm2VtY5WbBcoAAAOh [info] HEAD / 10:53:31.223 request_id=F9dQm2VtY5WbBcoAAAOh [info] Sent 200 in 6ms 10:53:39.044 [info] Started oban job 10:53:39.053 [error] [__exception__: true, __struct__: Ecto.NoResultsError, message: "expected at least one result but got none in query:\n\nfrom u0 in Cannery.Accounts.User,\n where: u0.id == ^\"ab8b4838-290a-45aa-a973-1b8e863e5954\"\n"] 10:53:40.831 request_id=F9dQnaKEZ2fF-VYAAAQh [info] POST /users/register 10:53:41.231 request_id=F9dQnbpUOoK6EQoAAARh [info] HEAD / 10:53:41.237 request_id=F9dQnbpUOoK6EQoAAARh [info] Sent 200 in 6ms 10:53:41.260 request_id=F9dQnaKEZ2fF-VYAAAQh [info] Sent 302 in 428ms 10:53:41.272 [info] Started oban job 10:53:41.363 [warning] Description: 'Authenticity is not established by certificate path validation' Reason: 'Option {verify, verify_peer} and cacertfile/cacerts is missing' 10:53:41.506 request_id=F9dQncq7zIzf3DoAAATh [info] GET /users/log_in 10:53:41.511 request_id=F9dQncq7zIzf3DoAAATh [info] Sent 200 in 4ms 10:53:42.726 [info] Finished oban job ``` When trying to get an invite sent out the oban_logger process crashes with the Email.worker failing. Trying to restart the Cannery Application instantly crashes this process as well, below is the error log ``` 10:44:01.660 request_id=F9dQFsk5A_TZUaEABH6B [info] HEAD / 10:44:01.677 request_id=F9dQFsk5A_TZUaEABH6B [info] Sent 200 in 17ms 10:44:09.789 [notice] SIGTERM received - shutting down 10:44:09.819 [info] Shutting down 2 sockets in 1 rounds of 2000ms 10:44:09.847 [info] Postgrex.Protocol (#PID<0.2021.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:09.847 [info] Postgrex.Protocol (#PID<0.2023.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:09.847 [info] Postgrex.Protocol (#PID<0.2020.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:09.849 [info] Postgrex.Protocol (#PID<0.2015.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:09.849 [info] Postgrex.Protocol (#PID<0.2022.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:09.849 [info] Postgrex.Protocol (#PID<0.2018.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:09.849 [info] Postgrex.Protocol (#PID<0.2019.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:09.850 [info] Postgrex.Protocol (#PID<0.2014.0>) missed message: {:EXIT, #PID<0.2169.0>, :shutdown} 10:44:15.535 [info] Running CanneryWeb.Endpoint with cowboy 2.10.0 at :::4000 (http) 10:44:15.539 [info] Access CanneryWeb.Endpoint at https://cannery.domain.tld 10:44:15.583 [info] Migrations already up 10:44:17.780 [info] CONNECTED TO Phoenix.LiveView.Socket in 41µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "HVIFMzUWFxMGQFE3ESQ1M14pEFQdG0obtapPcFtbQ24PXWo_6xufHN2B", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://cannery.domain.tld/css/app-95b4feae40bef5232368882ae0f132db.css?vsn=d", "1" => "https://cannery.domain.tld/js/app-4963fe5096debd403b662e4696b92148.js?vsn=d"}, "vsn" => "2.0.0"} 10:44:17.914 [info] CONNECTED TO Phoenix.LiveView.Socket in 64µs Transport: :websocket Serializer: Phoenix.Socket.V2.JSONSerializer Parameters: %{"_csrf_token" => "GXgkNyYEKzk7OlAyCkA8HTI3Lm0zOgk7pKQTpTHHlH5UC3fqZfK_foqb", "_live_referer" => "undefined", "_mounts" => "18", "_track_static" => %{"0" => "https://cannery.domain.tld/css/app-95b4feae40bef5232368882ae0f132db.css?vsn=d", "1" => "https://cannery.domain.tld/js/app-4963fe5096debd403b662e4696b92148.js?vsn=d"}, "vsn" => "2.0.0"} 10:44:21.635 request_id=F9dQG2_TrdgkmEYAAAKi [info] HEAD / 10:44:21.641 request_id=F9dQG2_TrdgkmEYAAAKi [info] Sent 200 in 5ms 10:44:22.609 [info] Started oban job: { "job": { "args": { "attrs": { "url": "https://cannery.domain.tld/users/confirm/z3syV-t8OqbhkjifKkDsNWwOiiUFnM3B4LqcvzEM3wk" }, "email": "welcome", "user_id": "cb3e85a8-0e5e-471d-a162-82a9c6909aee" }, "id": 12, "meta": {}, "queue": "mailers", "worker": "Cannery.EmailWorker" }, "measurements": { "system_time": 1717929862608766436 } } 10:44:22.644 [error] Handler "oban-logger" has failed and has been detached. Class=:error Reason=%Protocol.UndefinedError{ protocol: String.Chars, value: %Oban.PerformError{ message: "Cannery.EmailWorker failed with {:error, {:retries_exceeded, {:network_failure, ~c\"<ip address>\", {:error, {:options, :incompatible, [verify: :verify_peer, cacerts: :undefined]}}}}}", reason: {:error, {:retries_exceeded, {:network_failure, ~c"209.85.202.108", {:error, {:options, :incompatible, [verify: :verify_peer, cacerts: :undefined]}}}}} }, description: "" } Stacktrace=[ {String.Chars, :impl_for!, 1, [file: ~c"lib/string/chars.ex", line: 3]}, {String.Chars, :to_string, 1, [file: ~c"lib/string/chars.ex", line: 22]}, {Cannery.Logger, :handle_event, 4, [file: ~c"lib/cannery/logger.ex", line: 17]}, {:telemetry, :"-execute/3-fun-0-", 4, [file: ~c"/app/deps/telemetry/src/telemetry.erl", line: 160]}, {:lists, :foreach_1, 2, [file: ~c"lists.erl", line: 1686]}, {Oban.Queue.Executor, :emit_event, 1, [file: ~c"lib/oban/queue/executor.ex", line: 270]}, {Oban.Queue.Executor, :"-call/1-fun-0-", 1, [file: ~c"lib/oban/queue/executor.ex", line: 81]}, {Oban.Backoff, :with_retry, 3, [file: ~c"lib/oban/backoff.ex", line: 106]} ] 10:44:31.625 request_id=F9dQHcNGd97W3mMAAADj [info] HEAD / 10:44:31.634 request_id=F9dQHcNGd97W3mMAAADj [info] Sent 200 in 8ms 10:44:41.617 request_id=F9dQIBbS0QydE4MAAAAB [info] HEAD / 10:44:41.623 request_id=F9dQIBbS0QydE4MAAAAB [info] Sent 200 in 5ms ``` The all downgrades and upgrades were tested within 30 mins of each other to find which version enabled the email sign up to work.
Author

These are my SMTP settings used within the docker environment vars

      - SMTP_HOST=smtp.gmail.com
      - SMTP_PORT=465
      - SMTP_USERNAME=<email_add>@gmail.com
      - SMTP_PASSWORD=<password> 
      - SMTP_SSL=true
      - EMAIL_FROM=<email_add>@gmail.com
      - EMAIL_NAME=Cannery
These are my SMTP settings used within the docker environment vars ``` - SMTP_HOST=smtp.gmail.com - SMTP_PORT=465 - SMTP_USERNAME=<email_add>@gmail.com - SMTP_PASSWORD=<password> - SMTP_SSL=true - EMAIL_FROM=<email_add>@gmail.com - EMAIL_NAME=Cannery ```
Author

Tested as confirmed to work on 0.9.1, 0.9.2, 0.9.3, 0.9.4.

The breakage appears in the code released in 0.9.5

Tested as confirmed to work on 0.9.1, 0.9.2, 0.9.3, 0.9.4. The breakage appears in the code released in 0.9.5
aaron_nad changed title from User SignUp is broken since version 0.9.1+ (Email not sending) to User SignUp is broken since version 0.9.5+ (Email not sending) 2024-06-09 07:10:05 -04:00
Author

d896257602/lib/cannery/accounts/email_worker.ex - im not overly familiar with elixir and JS, but i presume a library update or dependency update in 0.9.5 requires the following file to be updated.

https://gitea.bubbletea.dev/shibao/cannery/src/commit/d896257602d8e6f5866fa02cba734761887b103c/lib/cannery/accounts/email_worker.ex - im not overly familiar with elixir and JS, but i presume a library update or dependency update in 0.9.5 requires the following file to be updated.
Owner

sorry about this issue, could you try updating to version 0.9.10 and seeing if that fixes the issue? thank you!

sorry about this issue, could you try updating to version `0.9.10` and seeing if that fixes the issue? thank you!
Author

Hey,

This is still broken in 0.9.10

      },

      "email": "welcome",

      "user_id": "6b0841d3-fec2-4179-b870-1228e25e48e8"

    },

    "id": 20,

    "meta": {},

    "queue": "mailers",

    "worker": "Cannery.EmailWorker"

  },

  "measurements": {

    "system_time": 1722176946705472376

  }

}

14:29:06.720 [error] Oban exception: {

  "stacktrace": "    (cannery 0.9.10) lib/cannery/accounts/email_worker.ex:10: Cannery.EmailWorker.perform(%Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, \"public\", \"oban_jobs\">, id: 20, state: \"executing\", queue: \"mailers\", worker: \"Cannery.EmailWorker\", args: %{\"attrs\" => %{\"url\" => \"https://cannery.heatherby.net/users/confirm/aEUuuAfp9oXFszaByKcHNnwNKimt-Cw4mdUlJExKUo0\"}, \"email\" => \"welcome\", \"user_id\" => \"6b0841d3-fec2-4179-b870-1228e25e48e8\"}, meta: %{}, tags: [\"email\"], errors: [%{\"at\" => \"2024-07-28T14:28:49.536037Z\", \"attempt\" => 1, \"error\" => \"** (FunctionClauseError) no function clause matching in Cannery.EmailWorker.perform/1\\n\\nThe following arguments were given to Cannery.EmailWorker.perform/1:\\n\\n    # 1\\n    %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, \\\"public\\\", \\\"oban_jobs\\\">, id: 20, state: \\\"executing\\\", queue: \\\"mailers\\\", worker: \\\"Cannery.EmailWorker\\\", args: %{\\\"attrs\\\" => %{\\\"url\\\" => \\\"https://cannery.heatherby.net/users/confirm/aEUuuAfp9oXFszaByKcHNnwNKimt-Cw4mdUlJExKUo0\\\"}, \\\"email\\\" => \\\"welcome\\\", \\\"user_id\\\" => \\\"6b0841d3-fec2-4179-b870-1228e25e48e8\\\"}, meta: %{}, tags: [\\\"email\\\"], errors: [], attempt: 1, attempted_by: [\\\"cannery@aa80d06af346\\\", \\\"85ec992d-5d37-49d2-b279-ebe3782fa8f7\\\"], max_attempts: 20, priority: 0, attempted_at: ~U[2024-07-28 14:28:49.526875Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2024-07-28 14:28:49.499993Z], scheduled_at: ~U[2024-07-28 14:28:49.499993Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Basic, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: \\\"cannery@aa80d06af346\\\", notifier: {Oban.Notifiers.Postgres, []}, peer: {Oban.Peers.Postgres, []}, plugins: [{Oban.Plugins.Pruner, []}], prefix: \\\"public\\\", queues: [default: [limit: 10], mailers: [limit: 20]], repo: Cannery.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}\\n\\n    (cannery 0.9.10) lib/cannery/accounts/email_worker.ex:10: Cannery.EmailWorker.perform/1\\n    (oban 2.17.10) lib/oban/queue/executor.ex:129: Oban.Queue.Executor.perform/1\\n    (oban 2.17.10) lib/oban/queue/executor.ex:74: Oban.Queue.Executor.call/1\\n    (elixir 1.16.3) lib/task/supervised.ex:101: Task.Supervised.invoke_mfa/2\\n    (elixir 1.16.3) lib/task/supervised.ex:36: Task.Supervised.reply/4\\n\"}], attempt: 2, attempted_by: [\"cannery@aa80d06af346\", \"85ec992d-5d37-49d2-b279-ebe3782fa8f7\"], max_attempts: 20, priority: 0, attempted_at: ~U[2024-07-28 14:29:06.694910Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2024-07-28 14:28:49.499993Z], scheduled_at: ~U[2024-07-28 14:29:06.534382Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Basic, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: \"cannery@aa80d06af346\", notifier: {Oban.Notifiers.Postgres, []}, peer: {Oban.Peers.Postgres, []}, plugins: [{Oban.Plugins.Pruner, []}], prefix: \"public\", queues: [default: [limit: 10], mailers: [limit: 20]], repo: Cannery.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil})\n    (oban 2.17.10) lib/oban/queue/executor.ex:129: Oban.Queue.Executor.perform/1\n    (oban 2.17.10) lib/oban/queue/executor.ex:74: Oban.Queue.Executor.call/1\n    (elixir 1.16.3) lib/task/supervised.ex:101: Task.Supervised.invoke_mfa/2\n    (elixir 1.16.3) lib/task/supervised.ex:36: Task.Supervised.reply/4\n",

  "job": {

    "args": {

      "attrs": {

        "url": "https://cannery.heatherby.net/users/confirm/aEUuuAfp9oXFszaByKcHNnwNKimt-Cw4mdUlJExKUo0"

      },

      "email": "welcome",

      "user_id": "6b0841d3-fec2-4179-b870-1228e25e48e8"

    },

    "id": 20,

    "meta": {},

    "queue": "mailers",

    "worker": "Cannery.EmailWorker"

  },

  "measurements": {

    "duration": 1066472,

    "queue_time": 160528000

  }

}
Hey, This is still broken in 0.9.10 ``` }, "email": "welcome", "user_id": "6b0841d3-fec2-4179-b870-1228e25e48e8" }, "id": 20, "meta": {}, "queue": "mailers", "worker": "Cannery.EmailWorker" }, "measurements": { "system_time": 1722176946705472376 } } 14:29:06.720 [error] Oban exception: { "stacktrace": " (cannery 0.9.10) lib/cannery/accounts/email_worker.ex:10: Cannery.EmailWorker.perform(%Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, \"public\", \"oban_jobs\">, id: 20, state: \"executing\", queue: \"mailers\", worker: \"Cannery.EmailWorker\", args: %{\"attrs\" => %{\"url\" => \"https://cannery.heatherby.net/users/confirm/aEUuuAfp9oXFszaByKcHNnwNKimt-Cw4mdUlJExKUo0\"}, \"email\" => \"welcome\", \"user_id\" => \"6b0841d3-fec2-4179-b870-1228e25e48e8\"}, meta: %{}, tags: [\"email\"], errors: [%{\"at\" => \"2024-07-28T14:28:49.536037Z\", \"attempt\" => 1, \"error\" => \"** (FunctionClauseError) no function clause matching in Cannery.EmailWorker.perform/1\\n\\nThe following arguments were given to Cannery.EmailWorker.perform/1:\\n\\n # 1\\n %Oban.Job{__meta__: #Ecto.Schema.Metadata<:loaded, \\\"public\\\", \\\"oban_jobs\\\">, id: 20, state: \\\"executing\\\", queue: \\\"mailers\\\", worker: \\\"Cannery.EmailWorker\\\", args: %{\\\"attrs\\\" => %{\\\"url\\\" => \\\"https://cannery.heatherby.net/users/confirm/aEUuuAfp9oXFszaByKcHNnwNKimt-Cw4mdUlJExKUo0\\\"}, \\\"email\\\" => \\\"welcome\\\", \\\"user_id\\\" => \\\"6b0841d3-fec2-4179-b870-1228e25e48e8\\\"}, meta: %{}, tags: [\\\"email\\\"], errors: [], attempt: 1, attempted_by: [\\\"cannery@aa80d06af346\\\", \\\"85ec992d-5d37-49d2-b279-ebe3782fa8f7\\\"], max_attempts: 20, priority: 0, attempted_at: ~U[2024-07-28 14:28:49.526875Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2024-07-28 14:28:49.499993Z], scheduled_at: ~U[2024-07-28 14:28:49.499993Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Basic, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: \\\"cannery@aa80d06af346\\\", notifier: {Oban.Notifiers.Postgres, []}, peer: {Oban.Peers.Postgres, []}, plugins: [{Oban.Plugins.Pruner, []}], prefix: \\\"public\\\", queues: [default: [limit: 10], mailers: [limit: 20]], repo: Cannery.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil}\\n\\n (cannery 0.9.10) lib/cannery/accounts/email_worker.ex:10: Cannery.EmailWorker.perform/1\\n (oban 2.17.10) lib/oban/queue/executor.ex:129: Oban.Queue.Executor.perform/1\\n (oban 2.17.10) lib/oban/queue/executor.ex:74: Oban.Queue.Executor.call/1\\n (elixir 1.16.3) lib/task/supervised.ex:101: Task.Supervised.invoke_mfa/2\\n (elixir 1.16.3) lib/task/supervised.ex:36: Task.Supervised.reply/4\\n\"}], attempt: 2, attempted_by: [\"cannery@aa80d06af346\", \"85ec992d-5d37-49d2-b279-ebe3782fa8f7\"], max_attempts: 20, priority: 0, attempted_at: ~U[2024-07-28 14:29:06.694910Z], cancelled_at: nil, completed_at: nil, discarded_at: nil, inserted_at: ~U[2024-07-28 14:28:49.499993Z], scheduled_at: ~U[2024-07-28 14:29:06.534382Z], conf: %Oban.Config{dispatch_cooldown: 5, engine: Oban.Engines.Basic, get_dynamic_repo: nil, insert_trigger: true, log: false, name: Oban, node: \"cannery@aa80d06af346\", notifier: {Oban.Notifiers.Postgres, []}, peer: {Oban.Peers.Postgres, []}, plugins: [{Oban.Plugins.Pruner, []}], prefix: \"public\", queues: [default: [limit: 10], mailers: [limit: 20]], repo: Cannery.Repo, shutdown_grace_period: 15000, stage_interval: 1000, testing: :disabled}, conflict?: false, replace: nil, unique: nil, unsaved_error: nil})\n (oban 2.17.10) lib/oban/queue/executor.ex:129: Oban.Queue.Executor.perform/1\n (oban 2.17.10) lib/oban/queue/executor.ex:74: Oban.Queue.Executor.call/1\n (elixir 1.16.3) lib/task/supervised.ex:101: Task.Supervised.invoke_mfa/2\n (elixir 1.16.3) lib/task/supervised.ex:36: Task.Supervised.reply/4\n", "job": { "args": { "attrs": { "url": "https://cannery.heatherby.net/users/confirm/aEUuuAfp9oXFszaByKcHNnwNKimt-Cw4mdUlJExKUo0" }, "email": "welcome", "user_id": "6b0841d3-fec2-4179-b870-1228e25e48e8" }, "id": 20, "meta": {}, "queue": "mailers", "worker": "Cannery.EmailWorker" }, "measurements": { "duration": 1066472, "queue_time": 160528000 } } ```
shibao added the
bug
label 2024-07-28 10:51:39 -04:00
shibao added this to the cannery project 2024-07-28 10:52:04 -04:00
Owner

can you try seeing if this is fixed in version 0.9.11? thank you!

can you try seeing if this is fixed in version 0.9.11? thank you!
Owner

i'm going to close this since I'm pretty sure that it's fixed, but if it isn't please don't hesitate to reopen!

i'm going to close this since I'm pretty sure that it's fixed, but if it isn't please don't hesitate to reopen!
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: shibao/cannery#49
No description provided.