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 2 #6180

Merged

Conversation

revitteth
Copy link
Collaborator

@revitteth revitteth commented Dec 2, 2022

Continuation of PR #6009. Storage and retrieval of withdrawals.

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

Hive Failures

  • Withdrawals Fork on Block 2
  • 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=)
  • 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)

@revitteth revitteth self-assigned this Dec 2, 2022
@revitteth revitteth force-pushed the feat/withdrawals-db-storage-eip-4895 branch 6 times, most recently from 1d3b40e to 05070ef Compare December 12, 2022 12:06
.gitignore Show resolved Hide resolved
@revitteth revitteth requested a review from yperbasis December 12, 2022 12:14
core/rawdb/accessors_chain.go Outdated Show resolved Hide resolved
core/types/block.go Outdated Show resolved Hide resolved
@revitteth revitteth force-pushed the feat/withdrawals-db-storage-eip-4895 branch from 05070ef to 58215be Compare December 14, 2022 14:35
core/types/block.go Outdated Show resolved Hide resolved
core/types/block.go Outdated Show resolved Hide resolved
core/types/block.go Outdated Show resolved Hide resolved
core/types/block.go Outdated Show resolved Hide resolved
@revitteth revitteth force-pushed the feat/withdrawals-db-storage-eip-4895 branch 4 times, most recently from a15f44d to d7d9249 Compare December 15, 2022 17:47
@revitteth revitteth marked this pull request as ready for review December 15, 2022 17:53
@revitteth
Copy link
Collaborator Author

@yperbasis there are still some failing hive tests, but this is close to ready I think! I will investigate the remaining failures.

@revitteth revitteth force-pushed the feat/withdrawals-db-storage-eip-4895 branch 5 times, most recently from 10c9136 to cb95764 Compare December 19, 2022 13:34
@revitteth revitteth force-pushed the feat/withdrawals-db-storage-eip-4895 branch 2 times, most recently from f569851 to 469b8d2 Compare December 19, 2022 14:46
@yperbasis yperbasis changed the title Withdrawals - Database Withdrawals part 2 Dec 20, 2022
core/types/block.go Outdated Show resolved Hide resolved
eth/protocols/eth/protocol.go Show resolved Hide resolved
eth/protocols/eth/protocol.go Show resolved Hide resolved
Store the withdrawals (max. 16 per block) on the bodyForStorage.
@revitteth revitteth force-pushed the feat/withdrawals-db-storage-eip-4895 branch from 469b8d2 to fe5b0cd Compare December 20, 2022 08:04
@revitteth revitteth merged commit 4bdb35f into erigontech:devel Dec 20, 2022
@revitteth revitteth deleted the feat/withdrawals-db-storage-eip-4895 branch December 20, 2022 09:09
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.

2 participants