-
Notifications
You must be signed in to change notification settings - Fork 25
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
feat: limit bundle by data size #188
base: master
Are you sure you want to change the base?
Conversation
a6715bd
to
271115b
Compare
target fragment count
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nicely done. Left some small comments. In addition to the original task, thanks for the docs update and adding chunked fuel block imports.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Great work on this, looking forward to seeing it live!
Closes: #157
Bundling can now be configured by two new config parameters:
The idea is that we can configure the committer to give lots of data for the bundler to work with (ie achieve better compression, gas usage) while allowing it to only generate bundles that fit in N eth blobs.
Along with that we also bundle if we accumulate the configured number of blocks, so that we are more lively when we have a large backlog of unbundled blocks that are small, for example.
And there is the traditional timeout that will bundle anyways if we haven't bundled anything for a long time.
Also grouped together blocks before importing them. Mainly to avoid an edgecase mentioned in the bundler code but also to reduce the number of "imported N..=N+1 logs" we had.