From a751fd3ce762df99490889153d36029ff4cd00da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Ovejero?= Date: Tue, 4 Oct 2022 10:35:22 +0200 Subject: [PATCH] fix(core): fix excess run for pinned trigger in partial execution (#4185) * :bug: Fix excess run in partial execution * :rewind: Undo changes to `workflowRun.ts` * :zap: Add to `startNodes` only if no `runData` --- packages/cli/src/api/workflows.api.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/cli/src/api/workflows.api.ts b/packages/cli/src/api/workflows.api.ts index fba6ebdc9..c6d92965c 100644 --- a/packages/cli/src/api/workflows.api.ts +++ b/packages/cli/src/api/workflows.api.ts @@ -2,7 +2,7 @@ /* eslint-disable import/no-cycle */ import express from 'express'; -import { IDataObject, IPinData, LoggerProxy, Workflow } from 'n8n-workflow'; +import { IDataObject, INode, IPinData, LoggerProxy, Workflow } from 'n8n-workflow'; import axios from 'axios'; import { FindManyOptions, In } from 'typeorm'; @@ -565,7 +565,9 @@ workflowsController.post( userId: req.user.id, }; - if (pinnedTrigger) { + const hasRunData = (node: INode) => runData !== undefined && !!runData[node.name]; + + if (pinnedTrigger && !hasRunData(pinnedTrigger)) { data.startNodes = [pinnedTrigger.name]; }