Bug Description
After upgrading from n8n 2.25.7 to 2.27.0, a production workflow using a Wait node in webhook resume mode started failing again with the same observable behavior as #29924.
The child workflow calls the parent resume URL:
/webhook-waiting/<parentExecutionId>
and receives:
404 - {"code":404,"message":"The execution \"<parentExecutionId>\" does not exist."}
This only happens when the parent workflow has:
"saveDataSuccessExecution": "none"
Changing the parent workflow to:
"saveDataSuccessExecution": "all"
stops the failure.
This looks related to #29924 / #30099, but the #30099 code appears to be present in 2.27.0. So this may be the same class of bug happening through another execution persistence path.
The production impact is significant: the affected workflow runs frequently and intentionally avoids storing successful executions, but the parent execution must still remain available while parked at a Wait node.
To Reproduce
Production pattern:
- Run n8n 2.27.0 in queue mode with PostgreSQL.
- Use a parent workflow with
saveDataSuccessExecution: "none".
- In the parent workflow, fan out to child workflows.
- Park the parent workflow at a Wait node in webhook resume mode.
- Let child workflows call the parent resume URL
/webhook-waiting/<parentExecutionId>.
- Some child executions fail with 404 because the parent execution no longer exists.
Concrete production failures observed on 2.27.0:
Child execution: 1752482
Child workflow: -> Calendrier vers Notion
Failed node: Call webhook
Parent execution id referenced by child: 1752478
Failure time: 2026-06-16 18:56:09 UTC
Child execution: 1752566
Child workflow: -> Calendrier vers Notion
Failed node: Call webhook
Parent execution id referenced by child: 1752561
Failure time: 2026-06-16 19:00:17 UTC
Database check after the failure:
SELECT id, status, finished, "workflowId", "startedAt", "stoppedAt", "waitTill", "deletedAt"
FROM execution_entity
WHERE id IN (1752478, 1752561);
returned no rows for the parent execution ids.
The failed child executions were still present and stored the 404 error.
Expected behavior
A parent execution parked at a Wait node in webhook resume mode should remain findable through:
/webhook-waiting/<executionId>
until it is resumed, even when the parent workflow has:
"saveDataSuccessExecution": "none"
The execution should not be deleted, soft-deleted, pruned, or otherwise made unavailable while it is still waiting for a resume webhook.
Debug Info
n8n version: 2.27.0
Node.js version: 24.16.0
Database: PostgreSQL 15
Execution mode: queue
Hosting: Docker self-hosted
OS: Ubuntu 24.04.4 LTS
Architecture: x86_64
Deployment topology:
- 1 main n8n container
- 5 n8n worker containers
- PostgreSQL 15
- Redis/Valkey queue backend
- Docker Compose
Related issues / PRs:
Additional notes:
- The instance was downgraded back to 2.25.7 after this regression.
- After downgrading to 2.25.7, the same production workflow stopped producing
The execution "<id>" does not exist errors.
- Workaround on 2.27.0 was to change the parent workflow from
saveDataSuccessExecution: "none" to saveDataSuccessExecution: "all".
Operating System
Ubuntu 24.04.4 LTS, Docker self-hosted
n8n Version
2.27.0
Node.js Version
24.16.0
Database
PostgreSQL
Execution mode
queue
Hosting
self hosted
Bug Description
After upgrading from n8n 2.25.7 to 2.27.0, a production workflow using a Wait node in webhook resume mode started failing again with the same observable behavior as #29924.
The child workflow calls the parent resume URL:
and receives:
This only happens when the parent workflow has:
Changing the parent workflow to:
stops the failure.
This looks related to #29924 / #30099, but the #30099 code appears to be present in 2.27.0. So this may be the same class of bug happening through another execution persistence path.
The production impact is significant: the affected workflow runs frequently and intentionally avoids storing successful executions, but the parent execution must still remain available while parked at a Wait node.
To Reproduce
Production pattern:
saveDataSuccessExecution: "none"./webhook-waiting/<parentExecutionId>.Concrete production failures observed on 2.27.0:
Database check after the failure:
returned no rows for the parent execution ids.
The failed child executions were still present and stored the 404 error.
Expected behavior
A parent execution parked at a Wait node in webhook resume mode should remain findable through:
until it is resumed, even when the parent workflow has:
The execution should not be deleted, soft-deleted, pruned, or otherwise made unavailable while it is still waiting for a resume webhook.
Debug Info
n8n version: 2.27.0
Node.js version: 24.16.0
Database: PostgreSQL 15
Execution mode: queue
Hosting: Docker self-hosted
OS: Ubuntu 24.04.4 LTS
Architecture: x86_64
Deployment topology:
Related issues / PRs:
Additional notes:
The execution "<id>" does not existerrors.saveDataSuccessExecution: "none"tosaveDataSuccessExecution: "all".Operating System
Ubuntu 24.04.4 LTS, Docker self-hosted
n8n Version
2.27.0
Node.js Version
24.16.0
Database
PostgreSQL
Execution mode
queue
Hosting
self hosted