graphprotocol / graphprotocol/graph-node
[Feature] EIP-4844 Blob support
まだ誰も着手していません。
- 主要言語
- Rust
- スター
- 3.2k
- フォーク
- 1.1k
- 平均マージ
- 4日 1時間
- マージ済み PR(30日)
- 1
説明
Description
Proto-danksharding is slated for deployment on the Ethereum mainnet in March, following its successful implementation on test networks. The primary focus of EIP-4844 has been on Layer 2 (L2) solutions, which will utilize the new Type 3 transactions for data storage, rather than depending on the (comparatively) expensive calldata. However, it's anticipated that various other applications will also adopt this innovation. There's already discussion among DeFi dApps about exploring this capability.
We don't know how it will be used, but graph-node should support blobs and allow subgraphs to parse and decode the data to make it usable by developpers. This feature would allow developers to access the information without needing to resort to potentially costly RPC calls. The Graph might also offer an effective solution to the data retention challenges posed by EIP-4844.
Several technical questions need addressing:
- Determinism: By default, consensus layer (CL) nodes will only store blob data for a very brief period. This implies that subgraphs indexed at different times will capture varying data sets. The network lacks support for synchronizing this data, but indexers might have the option to retrieve historical data by other offline means, though this is yet to be confirmed.
- Consensus Layer (beacon chain/eth2) Support: At present, graph-node does not support RPC calls to CL nodes.
- Standardization of Blob Content Format: The format for blob content has not been standardized.
Are you aware of any blockers that must be resolved before implementing this feature? If so, which? Link to any relevant GitHub issues.
No response
Some information to help us out
- Tick this box if you plan on implementing this feature yourself.
- I have searched the issue tracker to make sure this issue is not a duplicate.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
実装ファイルやテストは指定されていません。まず graph-node に既存の Ethereum RPC と subgraph のデータパスを調査し、次に Consensus Layer へのアクセス、blob の保持と決定性、コンテンツ形式に関する問題を解決します。完了の条件は、subgraphs が EIP-4844 blob データにアクセスし、パースしてデコードでき、定義済みの過去データに対する動作があることです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- blockchain, rust
- 領域
- backend-api-design, blockchain
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100