Save Execution Progress Resume Explaination


I can’t figure how to resume the workflow in case of an error.

From the documentation you say:

Save Execution Progress

This setting allows you to save the execution data of each node. By setting it to Yes, you can resume the workflow from where it stopped in case of an error. However, it may increase latency.

So for example i have a workflow with Save Execution Progress set to yes and i started, it runs correctly.

As it runs i execute a command

docker exec -it <container_id> kill -9 <proccess_id>

The workflow crashes and stops.

My question is, how to resume it then from the last execution node? If i press again execute workflow, it starts from the beggining.

Am i missing something?

Thank you.

Hi @Mulen, to be honest, I had to check for myself too (this is one of the settings I have not used before).

The difference will only be visible if your entire workflow/instance crashes (and not just a single node failing, for example because an API returns an error code). In such cases, the retry option would not be available unless the Save Execution Progress option is enabled.

When this option is enabled, n8n will write and load the execution progress to/from the database after each step (otherwise it would only do so at the very beginning and after success/error of your execution). So this option will increase the latency and can also increase the likelihood of a crash.

I hope this helps!

Ok so after i intentionally kill the process while the workflow is running and hit the Retry button after, it produces an error 500 with the message below.

{"code":0,"message":"Cannot read property 'nodeExecutionStack' of undefined","hint":"","stack":"TypeError: Cannot read property 'nodeExecutionStack' of undefined\n    at /usr/local/lib/node_modules/n8n/dist/src/Server.js:1270:70\n    at runMicrotasks (<anonymous>)\n    at processTicksAndRejections (internal/process/task_queues.js:93:5)\n    at async /usr/local/lib/node_modules/n8n/dist/src/ResponseHelper.js:89:26"}

it doesn’t resume the execution of the workflow.