Skip to content

fix(ci): reduce integration test memory usage - #310

Merged
romac merged 2 commits into
mainfrom
fix-ci
Sep 2, 2026
Merged

fix(ci): reduce integration test memory usage#310
romac merged 2 commits into
mainfrom
fix-ci

Conversation

@romac

@romac romac commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Closes: #298

Summary

Disable Reth precompile caching for in-process integration nodes. These scenarios
do not exercise precompile caching, and the pinned Reth version reserves a large
cache for every precompile on every node. Avoiding those allocations preserves
the seven-node sync coverage while reducing runner memory pressure.

Also make ArcContext ownership explicit across default and Byzantine feature
builds so Clippy succeeds in both configurations.

Changes

  • Disable the Reth precompile cache in the integration node configuration.
  • Add a focused assertion for the test-node cache configuration.
  • Copy or clone ArcContext according to its feature-dependent ownership semantics.

Testing

  • cargo fmt --all -- --check
  • cargo nextest run --locked -p arc-test-integration --test-threads 1
  • cargo nextest run --locked -p arc-test-integration validators_and_full_nodes_reach_height_3 --test-threads 1
  • cargo nextest run --locked -p arc-node-consensus (462 tests)
  • cargo clippy --locked -p arc-test-integration --all-targets --all-features -- -D warnings
  • cargo clippy --locked -p arc-node-consensus --all-targets --features byzantine -- -D warnings

Additional Context

Reth fixed the oversized precompile-cache reservation upstream in
paradigmxyz/reth#25013. This change avoids that
production-sized cache in integration scenarios while arc-node remains pinned
to Reth v2.2.0.

No breaking changes.

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

The latest Buf updates on your PR. Results from workflow Public CI / proto (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed✅ passedSep 2, 2026, 10:10 AM

@romac romac changed the title fix(UNTRACKED): reduce integration test memory usage fix: reduce integration test memory usage Sep 2, 2026
@romac romac changed the title fix: reduce integration test memory usage fix(ci): reduce integration test memory usage Sep 2, 2026
@osr21

This comment has been minimized.

@romac
romac marked this pull request as ready for review September 2, 2026 10:55
Copilot AI lite review requested due to automatic review settings September 2, 2026 10:55

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Approval recommended

The changes are small, well-scoped to integration behavior and feature-gated ownership semantics, and include a direct test assertion for the new configuration.

Pull request overview

This PR reduces CI runner memory pressure during integration tests by disabling Reth’s precompile caching for in-process multi-node test runs, while also adjusting ArcContext ownership handling so Clippy passes under both default and byzantine feature builds.

Changes:

  • Disable Reth precompile caching in the integration node NodeConfig to avoid per-node cache allocations.
  • Add a unit test asserting the integration node execution config disables the precompile cache.
  • Make ArcContext consumption explicit by cloning only in byzantine builds (where it is non-Copy), and moving/copying in non-byzantine builds.
File summaries
File Description
crates/test/integration/src/runner.rs Disables precompile_cache_disabled for integration nodes and adds a small assertion test to lock in the behavior.
crates/malachite-app/src/node.rs Adjusts ArcContext ownership to satisfy feature-dependent Copy/Clone semantics and keep Clippy clean across configs.
Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@romac
romac requested a review from ZhiyuCircle September 2, 2026 12:34
@ZhiyuCircle ZhiyuCircle added the pending-import Merged PR awaiting reverse-sync to upstream label Sep 2, 2026
@romac
romac merged commit 4717046 into main Sep 2, 2026
35 checks passed
@romac
romac deleted the fix-ci branch September 2, 2026 12:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pending-import Merged PR awaiting reverse-sync to upstream

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ci: Rust Integration Tests job is failing across branches — validators_and_full_nodes_reach_height_3 killed by SIGKILL

4 participants