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

Withdrawals part 1 #6009

Merged
merged 30 commits into from
Dec 1, 2022
Merged

Withdrawals part 1 #6009

merged 30 commits into from
Dec 1, 2022

Conversation

yperbasis
Copy link
Member

@yperbasis yperbasis commented Nov 9, 2022

This PR partially implements EIP-4895: Beacon chain push withdrawals as operations. The new Engine API methods (ethereum/execution-apis#195) are implemented.

Body downloader and saving withdrawals into DB are not implemented yet!

@yperbasis yperbasis linked an issue Nov 9, 2022 that may be closed by this pull request
@yperbasis yperbasis changed the title [WIP] EIP-4895: Beacon chain push withdrawals as operations Withdrawals part 1 Nov 30, 2022
@yperbasis yperbasis requested a review from revitteth November 30, 2022 11:53
@yperbasis yperbasis marked this pull request as ready for review November 30, 2022 11:54
@yperbasis yperbasis merged commit d82c778 into devel Dec 1, 2022
@yperbasis yperbasis deleted the withdrawal2 branch December 1, 2022 08:15
@yperbasis yperbasis mentioned this pull request Dec 20, 2022
19 tasks
revitteth added a commit that referenced this pull request Dec 20, 2022
Continuation of PR #6009. Storage and retrieval of withdrawals.

- [x] storage of withdrawals on writeblock
- [x] composite key (block number | block hash)
- [x] value ([]withdrawal)
- [x] retrieval of withdrawals with block
- [x] tests around storing/retrieving withdrawals
- [x] tested in hive
- [x] commits tidied


## Hive Failures
- [x] Withdrawals Fork on Block 2
- [x] Withdrawals Fork on Block 3
- [ ] Sync after 2 blocks - Withdrawals on Block 1 - Single Withdrawal
Account - No Transactions ( Syncing client rejected valid chain)
- [ ] Sync after 2 blocks - Withdrawals on Block 1 - Single Withdrawal
Account (Timeout while waiting for secondary client to sync)
- [ ] Sync after 2 blocks - Withdrawals on Genesis - Single Withdrawal
Account (Timeout while waiting for secondary client to sync)
- [ ] Sync after 2 blocks - Withdrawals on Block 2 - Single Withdrawal
Account - No Transactions (Syncing client rejected valid chain)
- [ ] Sync after 2 blocks - Withdrawals on Block 2 - Single Withdrawal
Account (Timeout while waiting for secondary client to sync)
- [ ] Sync after 128 blocks - Withdrawals on Block 2 - Multiple
Withdrawal Accounts (Unexpected error on BalanceAt: Post
"http://172.17.0.4:8545/": context deadline exceeded, expected=<None>)
- [ ] Withdrawals Fork on Block 1 - 8 Block Re-Org, Sync (Expected no
error on EngineNewPayloadV2: error=Post "http://172.17.0.4:8551/":
context deadline exceeded)
- [ ] Withdrawals Fork on Block 8 - 10 Block Re-Org Sync (Expected no
error on EngineNewPayloadV2: error=Post "http://172.17.0.4:8551/":
context deadline exceeded)
- [ ] Withdrawals Fork on Canonical Block 8 / Side Block 7 - 10 Block
Re-Org Sync (Expected no error on EngineNewPayloadV2: error=Post
"http://172.17.0.4:8551/": context deadline exceeded)
- [ ] Withdrawals Fork on Canonical Block 8 / Side Block 9 - 10 Block
Re-Org Sync (Expected no error on EngineNewPayloadV2: error=Post
"http://172.17.0.4:8551/": context deadline exceeded)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant