Skip to content

eth/p2p: raise default tx announcement queue limit from 4096 to 16384#2151

Open
lucca30 wants to merge 2 commits intov2.7.0-candidatefrom
lmartins/pos-3471-txann-queue-limit
Open

eth/p2p: raise default tx announcement queue limit from 4096 to 16384#2151
lucca30 wants to merge 2 commits intov2.7.0-candidatefrom
lmartins/pos-3471-txann-queue-limit

Conversation

@lucca30
Copy link
Contributor

@lucca30 lucca30 commented Mar 19, 2026

Summary

  • Raises maxQueuedTxAnns from 4096 → 16384 in eth/protocols/eth/peer.go
  • During high-traffic bursts, the 4096 cap caused the oldest unannounced tx hashes to be evicted before reaching block producers, creating nonce gaps
  • Trusted/static peers already had a 10x limit (40960); this raises the default for all peers by ~4x without requiring explicit static/trusted configuration
  • Memory overhead: 512 KB per peer (up from 128 KB); ~25 MB across 50 peers — acceptable

Tests

  • TestTxAnnQueueDiscard (eth/protocols/eth/broadcast_test.go): unit test for the discard-oldest semantics
  • TestTxAnnouncementsAboveOldLimit69/68 (eth/handler_eth_test.go): integration test — floods 5000 txs (above old 4096 limit) through a live source→sink peer connection and asserts all arrive without drops

dependabot bot and others added 2 commits March 19, 2026 07:23
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.77.0 to 1.79.3.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](grpc/grpc-go@v1.77.0...v1.79.3)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.79.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Copy link

@claude claude bot left a comment

Choose a reason for hiding this comment

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

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review to trigger a review.

@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
25.0% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@claude
Copy link

claude bot commented Mar 19, 2026

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

@codecov
Copy link

codecov bot commented Mar 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 51.54%. Comparing base (2a0bfe7) to head (457cb99).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #2151      +/-   ##
===========================================
+ Coverage    51.51%   51.54%   +0.02%     
===========================================
  Files          882      882              
  Lines       154140   154140              
===========================================
+ Hits         79403    79445      +42     
+ Misses       69559    69524      -35     
+ Partials      5178     5171       -7     
Files with missing lines Coverage Δ
eth/protocols/eth/peer.go 29.12% <ø> (ø)

... and 22 files with indirect coverage changes

Files with missing lines Coverage Δ
eth/protocols/eth/peer.go 29.12% <ø> (ø)

... and 22 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@lucca30 lucca30 changed the base branch from develop to v2.7.0-candidate March 23, 2026 20:51
Copy link
Contributor

@cffls cffls left a comment

Choose a reason for hiding this comment

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

There is a version bump in go.mod/sum, maybe due to base branch change.

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.

2 participants