Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(sequencer-relayer): change blob submitter to use boxed blocks #1863

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

ethanoroshiba
Copy link
Contributor

@ethanoroshiba ethanoroshiba commented Dec 6, 2024

Summary

Changed block channel to use boxed sequencer blocks.

Background

Running clippy with Rust 1.83.0 in #1857 triggered a lint for large error variant in the send methods for BlobSubmitterHandle. Large enum variants (including in Results) should be avoided because they are only as small as their largest variant: https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err. Creating the channel with a boxed block tackles this problem at its source.

Changes

  • Boxed SequencerBlock in BlobSubmitterHandle, which tackles the problem of potentially large send errors at its source.

Testing

Passing all tests

Changelogs

No updates required.

Breaking Changes

Overridden code freeze since this is a very small, non breaking change that shouldn't have any bearing since our previous audit.

Related Issues

closes #1860

@ethanoroshiba ethanoroshiba added sequencer-relayer pertaining to the astria-sequencer-relayer crate code-quality override-freeze labels Dec 6, 2024
@ethanoroshiba ethanoroshiba marked this pull request as ready for review December 6, 2024 21:06
@ethanoroshiba ethanoroshiba requested a review from a team as a code owner December 6, 2024 21:06
@ethanoroshiba ethanoroshiba changed the title chore(sequencer-relayer): remove large error chore(sequencer-relayer): change blob submitter to use boxed blocks Dec 10, 2024
@@ -276,14 +276,19 @@ impl Relayer {
}

#[instrument(skip_all, fields(%height))]
#[expect(
Copy link
Member

Choose a reason for hiding this comment

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

I mean, you could just give this an alias, type ForwardingFut = Fuse<BoxFuture<...>>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code-quality override-freeze sequencer-relayer pertaining to the astria-sequencer-relayer crate
Projects
None yet
Development

Successfully merging this pull request may close these issues.

chore(sequencer-relayer): avoid large err variant
2 participants