Skip to content

[Besu-Plugin] Use blob compressor selector by timestamp#2569

Merged
gauravahuja merged 16 commits into
mainfrom
gauravahuja/besu-plugin_updated_compressor
Mar 24, 2026
Merged

[Besu-Plugin] Use blob compressor selector by timestamp#2569
gauravahuja merged 16 commits into
mainfrom
gauravahuja/besu-plugin_updated_compressor

Conversation

@gauravahuja
Copy link
Copy Markdown
Contributor

@gauravahuja gauravahuja commented Mar 9, 2026

This PR implements issue(s) #2503

Checklist

  • I wrote new tests for my new core changes.
  • I have successfully ran tests, style checker and build against my new changes locally.
  • If this change is deployed to any environment (including Devnet), E2E test coverage exists or is included in this
    PR.
  • I have informed the team of any breaking changes if there are any.

Note

Medium Risk
Changes core transaction compression/selection plumbing and introduces timestamp-based compressor version switching, which could affect block building and profitability decisions if misconfigured. Dependency resolution changes may also impact build/runtime classpaths.

Overview
Switches the sequencer from a single GoBackedBlobCompressor instance to BlobCompressorSelectorByTimestamp, allowing blob compressor versions to change by block timestamp and propagating that timestamp through TransactionCompressor/CachingTransactionCompressor (cache keys now include compressor version).

Adds a hidden CLI option --plugin-linea-blob-compressor-version-timestamps (wired into LineaTransactionSelectorConfiguration) plus tests for parsing it, and updates selectors (CompressionAwareTransactionSelector, factory/plugin wiring) and acceptance/unit tests accordingly.

Bumps blob-compressor to 3.0.2 and lineaKotlin to 0.2.0, and enforces a single kotlin-stdlib version via Gradle resolution strategy (also explicitly depends on kotlin-stdlib in sequencer and acceptance tests).

Written by Cursor Bugbot for commit af88cf1. This will update automatically on new commits. Configure here.

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Mar 10, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 59.21%. Comparing base (2fb7f92) to head (af88cf1).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff              @@
##               main    #2569      +/-   ##
============================================
+ Coverage     58.81%   59.21%   +0.39%     
- Complexity     1622     1629       +7     
============================================
  Files           457      456       -1     
  Lines         18579    18577       -2     
  Branches       2016     2016              
============================================
+ Hits          10928    11000      +72     
+ Misses         6984     6903      -81     
- Partials        667      674       +7     
Flag Coverage Δ *Carryforward flag
hardhat 96.63% <ø> (+0.10%) ⬆️ Carriedforward from 5d6eb47
kotlin 55.09% <ø> (+0.43%) ⬆️

*This pull request uses carry forward flags. Click here to find out more.
see 12 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.

Comment thread besu-plugins/linea-sequencer/acceptance-tests/build.gradle Outdated
Comment thread besu-plugins/linea-sequencer/sequencer/build.gradle
Filter94
Filter94 previously approved these changes Mar 20, 2026
@gauravahuja gauravahuja force-pushed the gauravahuja/besu-plugin_updated_compressor branch from 07ac292 to dfa5320 Compare March 23, 2026 18:02
Copy link
Copy Markdown
Contributor

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

There are 4 total unresolved issues (including 2 from previous reviews).

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

@gauravahuja gauravahuja force-pushed the gauravahuja/besu-plugin_updated_compressor branch from af88cf1 to 5d6eb47 Compare March 24, 2026 04:11
Comment thread besu-plugins/linea-sequencer/sequencer/build.gradle
@gauravahuja gauravahuja merged commit 1a297af into main Mar 24, 2026
116 of 117 checks passed
@gauravahuja gauravahuja deleted the gauravahuja/besu-plugin_updated_compressor branch March 24, 2026 18:49
gusiri pushed a commit that referenced this pull request Mar 26, 2026
* [Besu-Plugin] Use blob compressor selector by timestamp

* fix build and add test

* Bugbot comment

* Review comments

* Update TransactionCompressor interface and cachekey

* bugbot comment

* java doc update

* bugbot comment

* Update blob-compressor to release version

* Review comments

* Fix runtime jar

* Fix runtime issues

* Possible fix
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.

5 participants