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

Deal with max_blobs_per_block increase aftermath #7982

Open
siladu opened this issue Dec 4, 2024 · 1 comment
Open

Deal with max_blobs_per_block increase aftermath #7982

siladu opened this issue Dec 4, 2024 · 1 comment
Labels
EIP Ethereum Improvement Proposal Prague

Comments

@siladu
Copy link
Contributor

siladu commented Dec 4, 2024

EIP-7742 changes the hardcoded max blob count from 6 to be dynamic (via engine API).

Outside of the protocol changes, I've found 3 places where this probably needs to change:
a.

.maximumSize(6 * 32 * 3L) // 6 blobs max per 32 slots per 3 epochs

b.
c.
EnumMap<TransactionType, Integer> DEFAULT_MAX_PRIORITIZED_TRANSACTIONS_BY_TYPE =
new EnumMap<>(Map.of(TransactionType.BLOB, 6));

from Mikhail:

max blobs will not be higher than 16 during the next year.
I think that the target for Danksharding was 128 blobs, and this is still the target for DAS. So, the max is likely targeted to 128

So for the txpool pool and blob cache, I think some implementation options are:

1. Dynamic based on engine API
2. A staged config change, e.g. increase cache multiple to 16 now and plan to increase in the future
3. Go straight for 128 and hopefully don't have to think about it again

Sounds like Fabio is in favour of (3). I think I am too, but still considering (2) for blob cache depending on effort/performance impact. It would be nice not to increase Besu's memory requirement even more in the short term.

It's likely that https://eips.ethereum.org/EIPS/eip-7691 will go in which has a max of 9 blobs, so I think we should at least increase the cache to that while we investigate other solutions

@siladu siladu added the EIP Ethereum Improvement Proposal label Dec 4, 2024
@jflo jflo added the Prague label Dec 4, 2024
@siladu
Copy link
Contributor Author

siladu commented Dec 20, 2024

EIP-7742 was replaced with EIP-7840 so these values can be read from the genesis config now instead...however, we could still preemptively oversize if we choose.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
EIP Ethereum Improvement Proposal Prague
Projects
None yet
Development

No branches or pull requests

2 participants