Skip to content

revert: Make Wait node fully durable by removing in-memory execution path (backport to release-candidate/2.17.x)#28574

Merged
shortstacked merged 2 commits intorelease-candidate/2.17.xfrom
backport-28538-to-release-candidate/2.17.x
Apr 20, 2026
Merged

revert: Make Wait node fully durable by removing in-memory execution path (backport to release-candidate/2.17.x)#28574
shortstacked merged 2 commits intorelease-candidate/2.17.xfrom
backport-28538-to-release-candidate/2.17.x

Conversation

@n8n-assistant
Copy link
Copy Markdown
Contributor

@n8n-assistant n8n-assistant Bot commented Apr 16, 2026

Description

Backport of #28538 to release-candidate/2.17.x.

Checklist for the author (@shortstacked) to go through.

  • Review the backport changes
  • Fix possible conflicts
  • Merge to target branch

After this PR has been merged, it will be picked up in the next patch release for release track.

Original description

Summary

Reverts #27066 (f025a786e75ec962fcaca469c107324eea8548a3).

This restores the original Wait node behavior where waits shorter than 65 seconds run in-memory via setTimeout, and removes the DB-server-clock-anchored scheduling infrastructure introduced in the reverted PR.

What is restored:

  • Wait node: the < 65s in-memory execution path
  • WaitTracker: 60s poll interval with Date.now()-based timing
  • ExecutionRepository: original getWaitingExecutions() without lookahead window

What is removed:

  • ClockRepository and DbClockService (DB server clock syncing)
  • n8n_db_clock_skew_ms Prometheus gauge
  • 5s poll interval and 15s lookahead window

Review / Merge checklist

  • I have seen this code, I have run this code, and I take responsibility for this code.
  • PR title and summary are descriptive. (conventions)
  • Docs updated or follow-up ticket created.
  • Tests included.
  • PR Labeled with Backport to Beta, Backport to Stable, or Backport to v1 (if the PR is an urgent fix that needs to be backported)

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 16, 2026

Bundle Report

Changes will increase total bundle size by 9.27kB (0.02%) ⬆️. This is within the configured threshold ✅

Detailed changes
Bundle name Size Change
editor-ui-esm 45.71MB 9.27kB (0.02%) ⬆️

Affected Assets, Files, and Routes:

view changes for bundle: editor-ui-esm

Assets Changed:

Asset Name Size Change Total Size Change (%)
assets/worker-*.js 4.65kB 3.17MB 0.15%
assets/index-*.js -7 bytes 1.31MB -0.0%
assets/ParameterInputList-*.js -15 bytes 1.27MB -0.0%
assets/users.store-*.js -65 bytes 1.05MB -0.01%
assets/core-*.js -16 bytes 622.95kB -0.0%
assets/useRootStore-*.js 4.63kB 131.22kB 3.66%
assets/canvas.eventBus-*.js -72 bytes 117.4kB -0.06%
assets/NodeCreator-*.js 121 bytes 104.04kB 0.12%
assets/settings.store-*.js -18 bytes 79.8kB -0.02%
assets/NodeCreator-*.css 142 bytes 76.87kB 0.19%
assets/AppSidebar-*.js -2 bytes 32.13kB -0.01%
assets/SettingsAiGatewayView-*.js -19 bytes 9.95kB -0.19%
assets/useSettingsItems-*.js -12 bytes 5.99kB -0.2%
assets/SettingsLayout-*.js -2 bytes 5.19kB -0.04%
assets/useAiGateway-*.js -48 bytes 1.37kB -3.39%

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 16, 2026

Codecov Report

❌ Patch coverage is 70.90909% with 16 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
packages/cli/src/wait-tracker.ts 76.19% 10 Missing ⚠️
...s/@n8n/db/src/repositories/execution.repository.ts 0.00% 6 Missing ⚠️

📢 Thoughts on this report? Let us know!

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 16, 2026

Performance Comparison

Comparing currentlatest master14-day baseline

Idle baseline with Instance AI module loaded

Metric Current Latest Master Baseline (avg) vs Master vs Baseline Status
instance-ai-heap-used-baseline 186.72 MB 186.88 MB 186.42 MB (σ 0.27) -0.1% +0.2% ⚠️
instance-ai-rss-baseline 390.61 MB 386.52 MB 364.63 MB (σ 22.57) +1.1% +7.1% ⚠️

Memory consumption baseline with starter plan resources

Metric Current Latest Master Baseline (avg) vs Master vs Baseline Status
memory-rss-baseline 334.13 MB 288.44 MB 290.51 MB (σ 41.09) +15.8% +15.0% ⚠️
memory-heap-used-baseline 114.11 MB 114.39 MB 114.37 MB (σ 0.40) -0.2% -0.2%

docker-stats

Metric Current Latest Master Baseline (avg) vs Master vs Baseline Status
docker-image-size-n8n 1269.76 MB 1269.76 MB 1269.76 MB (σ 0.00) +0.0% +0.0%
docker-image-size-runners 386.00 MB 386.00 MB 390.33 MB (σ 9.21) +0.0% -1.1%
How to read this table
  • Current: This PR's value (or latest master if PR perf tests haven't run)
  • Latest Master: Most recent nightly master measurement
  • Baseline: Rolling 14-day average from master
  • vs Master: PR impact (current vs latest master)
  • vs Baseline: Drift from baseline (current vs rolling avg)
  • Status: ✅ within 1σ | ⚠️ 1-2σ | 🔴 >2σ regression

@shortstacked shortstacked enabled auto-merge (squash) April 20, 2026 08:55
@shortstacked shortstacked merged commit a4bdc80 into release-candidate/2.17.x Apr 20, 2026
50 checks passed
@shortstacked shortstacked deleted the backport-28538-to-release-candidate/2.17.x branch April 20, 2026 09:14
@n8n-assistant n8n-assistant Bot mentioned this pull request Apr 22, 2026
@n8n-assistant
Copy link
Copy Markdown
Contributor Author

n8n-assistant Bot commented Apr 22, 2026

Got released with n8n@2.17.4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant