@n8n/engine 0.15.1 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build.tsbuildinfo +1 -1
- package/dist/database/create-stores.d.ts +7 -0
- package/dist/database/create-stores.js +13 -0
- package/dist/database/create-stores.js.map +1 -0
- package/dist/database/index.d.ts +1 -0
- package/dist/database/index.js +3 -1
- package/dist/database/index.js.map +1 -1
- package/dist/database/migrations/1784890100000-CreateWorkflowStepExecution.js +1 -1
- package/dist/database/migrations/1784890100000-CreateWorkflowStepExecution.js.map +1 -1
- package/dist/database/typeorm-step-store.d.ts +7 -7
- package/dist/database/typeorm-step-store.js +96 -56
- package/dist/database/typeorm-step-store.js.map +1 -1
- package/dist/execution/execution-start-handler.js +2 -3
- package/dist/execution/execution-start-handler.js.map +1 -1
- package/dist/execution/execution.types.d.ts +3 -1
- package/dist/execution/execution.types.js +11 -0
- package/dist/execution/execution.types.js.map +1 -1
- package/dist/execution/index.d.ts +1 -1
- package/dist/execution/index.js +3 -3
- package/dist/execution/index.js.map +1 -1
- package/dist/execution/orchestration-worker.d.ts +3 -3
- package/dist/execution/orchestration-worker.js +5 -5
- package/dist/execution/orchestration-worker.js.map +1 -1
- package/dist/execution/settlement.d.ts +7 -0
- package/dist/execution/settlement.js +31 -0
- package/dist/execution/settlement.js.map +1 -0
- package/dist/execution/step-ready-handler.d.ts +0 -1
- package/dist/execution/step-ready-handler.js +29 -28
- package/dist/execution/step-ready-handler.js.map +1 -1
- package/dist/execution/step-settled-handler.d.ts +17 -0
- package/dist/execution/step-settled-handler.js +97 -0
- package/dist/execution/step-settled-handler.js.map +1 -0
- package/dist/execution/step-store.d.ts +18 -9
- package/dist/execution/step-store.js.map +1 -1
- package/dist/graph/index.d.ts +1 -1
- package/dist/graph/index.js +2 -1
- package/dist/graph/index.js.map +1 -1
- package/dist/graph/validate-executable-graph.js +15 -4
- package/dist/graph/validate-executable-graph.js.map +1 -1
- package/dist/graph/workflow-graph-queries.d.ts +1 -0
- package/dist/graph/workflow-graph-queries.js +14 -0
- package/dist/graph/workflow-graph-queries.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/queue/index.d.ts +1 -1
- package/dist/queue/work-queue.types.d.ts +3 -3
- package/dist/serve.js +2 -3
- package/dist/serve.js.map +1 -1
- package/package.json +6 -5
- package/dist/execution/step-completed-handler.d.ts +0 -13
- package/dist/execution/step-completed-handler.js +0 -74
- package/dist/execution/step-completed-handler.js.map +0 -1
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.StepCompletedHandler = void 0;
|
|
4
|
-
const graph_1 = require("../graph");
|
|
5
|
-
const validate_step_context_1 = require("./validate-step-context");
|
|
6
|
-
class StepCompletedHandler {
|
|
7
|
-
executionStore;
|
|
8
|
-
stepStore;
|
|
9
|
-
stepQueue;
|
|
10
|
-
constructor(executionStore, stepStore, stepQueue) {
|
|
11
|
-
this.executionStore = executionStore;
|
|
12
|
-
this.stepStore = stepStore;
|
|
13
|
-
this.stepQueue = stepQueue;
|
|
14
|
-
}
|
|
15
|
-
async handle(event) {
|
|
16
|
-
const [step, execution] = await Promise.all([
|
|
17
|
-
this.stepStore.loadStep(event.stepId),
|
|
18
|
-
this.executionStore.loadExecution(event.executionId),
|
|
19
|
-
]);
|
|
20
|
-
(0, validate_step_context_1.validateStepContext)(step, execution);
|
|
21
|
-
if (step.status === 'failed') {
|
|
22
|
-
await this.executionStore.finishExecution(execution.id, 'failed');
|
|
23
|
-
await this.stepStore.cancelQueuedSteps(execution.id);
|
|
24
|
-
return;
|
|
25
|
-
}
|
|
26
|
-
if (execution.status !== 'running')
|
|
27
|
-
return;
|
|
28
|
-
const planned = step.status === 'completed' ? await this.planSuccessors(execution, step.nodeId) : 0;
|
|
29
|
-
if (planned > 0)
|
|
30
|
-
return;
|
|
31
|
-
await this.finishExecutionIfDone(execution.id);
|
|
32
|
-
}
|
|
33
|
-
async finishExecutionIfDone(executionId) {
|
|
34
|
-
if (await this.stepStore.hasActiveSteps(executionId))
|
|
35
|
-
return;
|
|
36
|
-
const failed = await this.stepStore.hasFailedSteps(executionId);
|
|
37
|
-
await this.executionStore.finishExecution(executionId, failed ? 'failed' : 'completed');
|
|
38
|
-
}
|
|
39
|
-
async planSuccessors(execution, nodeId) {
|
|
40
|
-
const readyNodeIds = await this.readySuccessorNodeIds(execution, nodeId);
|
|
41
|
-
if (readyNodeIds.length === 0)
|
|
42
|
-
return 0;
|
|
43
|
-
const created = await this.stepStore.createSteps(readyNodeIds.map((readyNodeId) => ({
|
|
44
|
-
executionId: execution.id,
|
|
45
|
-
nodeId: readyNodeId,
|
|
46
|
-
status: 'queued',
|
|
47
|
-
})));
|
|
48
|
-
for (const { id: stepId } of created) {
|
|
49
|
-
await this.stepQueue.publish({
|
|
50
|
-
type: 'step:ready',
|
|
51
|
-
executionId: execution.id,
|
|
52
|
-
stepId,
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
return created.length;
|
|
56
|
-
}
|
|
57
|
-
async readySuccessorNodeIds(execution, nodeId) {
|
|
58
|
-
const successors = (0, graph_1.getSuccessorNodeIds)(execution.graph, nodeId).map((id) => ({
|
|
59
|
-
id,
|
|
60
|
-
predecessorIds: (0, graph_1.getPredecessorNodeIds)(execution.graph, id),
|
|
61
|
-
}));
|
|
62
|
-
const predecessorsToCheck = successors
|
|
63
|
-
.flatMap(({ predecessorIds }) => predecessorIds)
|
|
64
|
-
.filter((id) => id !== nodeId);
|
|
65
|
-
const completed = predecessorsToCheck.length === 0
|
|
66
|
-
? new Set()
|
|
67
|
-
: await this.stepStore.loadCompletedNodeIds(execution.id, predecessorsToCheck);
|
|
68
|
-
return successors
|
|
69
|
-
.filter(({ predecessorIds }) => predecessorIds.every((id) => id === nodeId || completed.has(id)))
|
|
70
|
-
.map(({ id }) => id);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
exports.StepCompletedHandler = StepCompletedHandler;
|
|
74
|
-
//# sourceMappingURL=step-completed-handler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"step-completed-handler.js","sourceRoot":"","sources":["../../src/execution/step-completed-handler.ts"],"names":[],"mappings":"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"}
|