Workflow does not proceed on test mode after if branches converges ahead

Describe the problem/error/question

The statement “If” when branching on test mode cannot proceed when the branches converge ahead because non-traversed branch has not been executed still.

What is the error message (if any)?

There is no error message.

Please share your workflow

Share the output returned by the last node

Information on your n8n setup

  • n8n version: 1.78.1
  • Database: Postgres
  • n8n EXECUTIONS_PROCESS setting: queue
  • Running n8n via: Docker
  • Operating system: Ubuntu Linux

It looks like your topic is missing some important information. Could you provide the following if applicable.

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

This is the way your workflow is actually connected, and it seems to proceed just fine.

Ok, Mr. Helicopter. Could you please run step by step from the beginning, after adding a node “Edit Fields” at the end?

I added another Set / Edit Fields at the end but that doesn’t change anything for a full end-to-end test. You didn’t mention initially that you are attempting to test each node one by one. There are all sorts of pitfalls to doing that because n8n is attempting to take the execution-data context from the previous run as pseudo-pinned input and continue/run only part of the workflow. In the circumstances where that doesn’t work, as far as I know, it’s just necessary to find a different way to test.

2 Likes

My meta-opinion: if the required information on current running node depends on previous executions data and it is not available, either from execution itself or mocked, it seems to me a ‘code smell’ to notify the user and do not proceed. Otherwise, if it is available, previous unnecessary nodes should not run unnecessarily, as it is occuring right now. One may benefit from graph definition “trail”, which execution path is the traversed nodes, not those on current execution “branch”.

Maybe one of the n8n devs will offer some more insight into why it works the way it does. If I had to guess, it’s a tradeoff on the behavior that “catches up” a workflow when you run a single node by running all the intermediate nodes from the last place there is execution-data available. Whatever the case, I think for now we just have to deal with the 95% solution and figure out ways to work around the other 5%.

Don’t forget to mark one if the replies as a solution. That’s how they’re keeping things tagged so the unanswered stuff gets attention.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.