Skip to content

ci: strip full debuginfo from test profile to fix linker OOM#828

Merged
vieiralucas merged 1 commit intomainfrom
worktree-ci-test-profile-strip-debuginfo
Apr 28, 2026
Merged

ci: strip full debuginfo from test profile to fix linker OOM#828
vieiralucas merged 1 commit intomainfrom
worktree-ci-test-profile-strip-debuginfo

Conversation

@vieiralucas
Copy link
Copy Markdown
Member

@vieiralucas vieiralucas commented Apr 28, 2026

Summary

Stabilize CI runner flakes (2/3) — fix cargo nextest run linker OOM.

Default [profile.test] emits full DWARF, which on the workspace's E2E test binaries spiked ld past the default GitHub runner's ~7 GB free RAM and killed it with `collect2: fatal error: ld terminated with signal 7 [Bus error], core dumped`. Pattern hit E2E lambda-runtime + lambda-container-clis partitions repeatedly across PRs #823, #824, #826.

Fix: set `[profile.test] debug = "line-tables-only"` in the workspace `Cargo.toml`. line-tables-only keeps file:line in backtraces (so panics still point at source lines) but drops per-symbol type and variable DWARF, which is what blows up linker memory. No effect on `dev`/`release`.

Verified locally: `cargo check --workspace --tests` succeeds.

Sibling PRs: #827 (nextest retries + disk diagnostics) and a follow-up for ECS task failure diagnostics.

Test plan

  • CI runs green first try on this PR
  • No new linker OOM in any partition
  • If a test panics, the failure message still includes file:line (verify post-merge by inspecting any next failed E2E run)

Summary by cubic

Fix CI linker OOM by setting [profile.test] debug = "line-tables-only" in the workspace Cargo.toml. Backtraces still show file:line, cargo nextest run no longer exhausts RAM on the default GitHub runner, and dev/release are unchanged.

Written for commit df66de6. Summary will update on new commits. Review in cubic

Add `[profile.test] debug = "line-tables-only"` to the workspace
manifest. Default test-profile DWARF was spiking `ld` past the GitHub
runner's ~7 GB free RAM during `cargo nextest run` on large E2E test
binaries, killing it with `signal 7 [Bus error]`. line-tables-only
keeps file:line backtraces but drops type/variable DWARF, cutting the
linker's working set enough to land on the default runner.

No effect on dev/release profiles.
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 1 file

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 28, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@vieiralucas vieiralucas merged commit 0485eba into main Apr 28, 2026
48 checks passed
@vieiralucas vieiralucas deleted the worktree-ci-test-profile-strip-debuginfo branch April 28, 2026 20:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant