ethereum / execution-apis

Collection of APIs provided by Ethereum execution layer clients
Creative Commons Zero v1.0 Universal
940 stars 373 forks source link

Add engine_getBlobsV1 route to cancun #560

Closed dapplion closed 3 months ago

dapplion commented 3 months ago

Add route to expose the execution blob mempool to the consensus client.

If a block happens to include well propagated blob transactions, the consensus client can use this route to speed up the time to head. It reduces re-orgs rates and equalizes profitability for stakers with poor bandwidth or latencies.

Longer rationale: https://hackmd.io/@dapplion/blob_fetch, original idea by @michaelsproul

To batch or not

Should this route return multiple blobs or a single one? I went for multiple since we already have the BlobBundle type and fits better to this use-case, which is all or nothing. But I can see the argument to have engine_getBlob and let the consumer decide what to do if some of the versionHashes are missing.

michaelsproul commented 3 months ago

Duplicate of https://github.com/ethereum/execution-apis/issues/559

Sorry! I should have sent you this

dapplion commented 3 months ago

Closing for