n8n/packages/@n8n/node-engine-compatibility
Florian Gößler fd4f0d76b6
perf(engine): Load only the columns and rows the execution path reads
- loadExecution no longer reads trigger_outputs. It runs for every step,
  but only the execution start reads the trigger payload. The start now
  reads it with the new loadTriggerOutputs, in parallel with
  loadExecution, so the start has no extra sequential round trip.
  ExecutionRecord no longer carries triggerOutputs; NewExecutionRecord
  still does.
- loadAllSteps becomes loadCompletedStepOutputs. The v1 step data loader
  used only the node id, the iteration and the outputs of completed
  steps, but it read all 12 columns of every step. The query now filters
  on status = 'completed' and reads the three columns.
- These queries run as static named prepared statements. The
  prepared-statement helper moves to database/prepared-query.ts and
  borrows a pooled connection when it runs outside a transaction.

Durability and ordering guarantees do not change.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-16 16:07:43 +02:00
..
src perf(engine): Load only the columns and rows the execution path reads 2026-10-16 16:07:43 +02:00
eslint.config.mjs chore: Remove dead ESLint config and add lint parity tooling (no-changelog) (#38343) 2026-09-11 13:33:07 +03:00
oxlint.config.mts chore(core): Migrate runtime lint to Oxlint (no-changelog) (#39844) 2026-09-29 16:06:29 +03:00
package.json 🚀 Release 2.43.0 (#40376) 2026-10-06 07:10:16 +00:00
tsconfig.build.json feat(core): Add v1 to v2 workflow converter (no-changelog) (#34870) 2026-07-28 11:58:57 +00:00
tsconfig.json feat(core): Add v1 to v2 workflow converter (no-changelog) (#34870) 2026-07-28 11:58:57 +00:00
vitest.config.ts test(core): Add engine M1 acceptance test suite (#35838) 2026-08-11 11:21:18 +00:00
vitest.integration.config.ts test(core): Add engine M1 acceptance test suite (#35838) 2026-08-11 11:21:18 +00:00