Add withdrawals (EIP-4895) (#7)
All checks were successful
Publish Docker image / Build and publish image (release) Successful in 29s

Support for validator withdrawal objects:
- new table `eth.withdrawal_cids`
- new column `withdrawals_root` in `eth.header_cids`

Reviewed-on: #7
This commit is contained in:
Roy Crihfield 2024-06-25 11:24:00 +00:00
parent 68a347e38d
commit fdd56e9803
2 changed files with 17 additions and 0 deletions

View File

@ -15,6 +15,7 @@ CREATE TABLE IF NOT EXISTS eth.header_cids (
timestamp BIGINT NOT NULL, timestamp BIGINT NOT NULL,
coinbase VARCHAR(66) NOT NULL, coinbase VARCHAR(66) NOT NULL,
canonical BOOLEAN NOT NULL DEFAULT TRUE, canonical BOOLEAN NOT NULL DEFAULT TRUE,
withdrawals_root VARCHAR(66) NOT NULL,
PRIMARY KEY (block_hash, block_number) PRIMARY KEY (block_hash, block_number)
); );

View File

@ -0,0 +1,16 @@
-- +goose Up
CREATE TABLE IF NOT EXISTS eth.withdrawal_cids (
block_number BIGINT NOT NULL,
header_id VARCHAR(66) NOT NULL,
cid TEXT NOT NULL,
index INTEGER NOT NULL,
validator INTEGER NOT NULL,
address VARCHAR(66) NOT NULL,
amount NUMERIC NOT NULL,
PRIMARY KEY (index, header_id, block_number)
);
SELECT create_hypertable('eth.withdrawal_cids', 'block_number', migrate_data => true, chunk_time_interval => 32768);
-- +goose Down
DROP TABLE eth.withdrawal_cids;