ryanwinchester

ryanwinchester

Oban await_signal with a Workflow.add_many?

Does the Worker.await_signal work with Workflow.add_many?

I’d like to wait for every job in the add_many to complete (including awaiting_for_signal) before the next workflow step runs.

Marked As Solved

sorentwo

sorentwo

Oban Core Team

Reproduced the issue synthetically and applied a patch for the add_many + apply_graft case. That will be in the next patch, but the alternate version I suggested above should achieve the same result.

Also Liked

sorentwo

sorentwo

Oban Core Team

The add_many function builds a sub-workflow which the next step depends on. The fact that one or more of those jobs are awaiting a signal shouldn’t change dependency resolution for the rest of the workflow. Can you share a minimal example of your workflow and how you’re testing/verifying it?

sorentwo

sorentwo

Oban Core Team

The workflows look straightforward. Before I try to reproduce with a test case, how are you verifying it? In development, with an automated test? If it’s with a test, can you share what the test looks like?

sorentwo

sorentwo

Oban Core Team

This is most likely because you’re scoping the signal to the parent workflow, and add_many creates a sub workflow. If you use the sub_workflow_id instead it should find the correct dependency. However, this seems like it should work intuitively and we’ll fix it in a patch.

Last Post!

AstonJ

AstonJ

Where Next?

Popular in Questions Top

vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
Emily
I have VueJS GUIs with the project generated using Webpack. I have Elixir modules that will need to be used by the VueJS GUIs. I forese...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
joeerl
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
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
belgoros
I’m not a pro in using Regex and can’t figure out why the following behaviour happens, especially if we take into account the difference ...
New
romenigld
I am trying to run a deploy with docker and I successfully runned with this command: docker build -t romenigld/blog-prod . but when I t...
New

Other popular topics Top

rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
JeremM34
Hello, how can I check the Phoenix version ? Thanks !
New
vertexbuffer
Hello, can anybody help here..? I have a list of players and I what to delete an element, but every for loop the list is reverting to ori...
New
AstonJ
Seen any cool LiveView demos, sample apps or examples? Please post them here! :003:
New
shijith.k
I am trying to start a new phoenix project with elixir 1.9, but mix phx.new does not work. It says that ** (Mix) The task "phx.new" could...
New
dblack
I’ve got an issue with an app and I’ve no idea of how to troubleshoot it. I’m hoping someone here might have seen something similar. I p...
New

We're in Beta

About us Mission Statement