tjchambers
Oban error info does not contain worker name
I am seeing in my logs:
\[Oban.Pro.Engines.Smart\] Unique constraint violation repaired.
This may indicate a unique job misconfiguration where jobs are being inserted
with conflicting unique keys across different states. The engine repaired the
violation for uniq_key: d6SRNHhS+Xdfu6D6nK2mDV/pIgGRhvczz93PBF2+UeM
Check your unique job configuration to ensure the :states option matches the
expected job lifecycle for this worker.
I would like to investigate this, but “this worker” is not helpful for me to identify the worker.
Without the worker module name how would I investigate this?
Most Liked
sorentwo
Oban Core Team
The unique violation is coming from Postgres, and that’s all the information it provides. You can use the uniq_key to find the worker, either by querying in the Web dashboard, or with this SQL:
select worker from oban_jobs where meta @> '{"uniq_key":"d6SRNHhS+Xdfu6D6nK2mDV/pIgGRhvczz93PBF2+UeM"}` limit 1;
It’s highly likely this is caused by an incomplete list of unique states. Look into switching to unique groups instead: Upgrading to v2.20 — Oban v2.23.0
2
Popular in Questions
I would like to know what is the best IDE for elixir development?
New
I want to highlight html closing tags when i click a html tag. That works in .html files but doesnt work for html.eex templates. How can...
New
If I have a post route which an argument:
post /my_post_route/:my_param1, MyController.my_post_handler
How would get the post params ...
New
Hello again - after a longish gap I’ve decided I really must dig into Elixir and see what’s been happening here - so I have a few questio...
New
Hi everyone,
I was playing with phoenix liveView but I run into an issue. I have a form and want to validate each input text when the te...
New
Credo is smart enough to check for (something like) this:
assert length(the_list) == 0
with this response:
Checking if an enum is empt...
New
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1]
15:22:35.803 [error] gen_event {lager_file_backend...
New
Other popular topics
Update:
How to use the Blogs & Podcasts section
You can post links to your blog posts or podcasts either in one of the Official Blog...
New
I have an umbrella app.
Some of the apps inside depend on other apps in the umbrella, unsurprisingly.
I’m writing a test for one of the...
New
Lets say I have map like this fetching from my database
%{"_id" => #BSON.ObjectId<58eb1a7a9ad169198c3dXXXX>, "email" => ...
New
I am using Ecto timestamps with postgres, I can see the timestamps() use the :naive_dateime but for my use case I wanted to store the ti...
New
What is the idiomatic way of matching for not nil in Elixir?
E.g.,
First way:
defp halt_if_not_signed_in(conn, signed_in_account) when...
New
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1]
15:22:35.803 [error] gen_event {lager_file_backend...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #elixirconf-us
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #metaprogramming
- #security
- #hex









