updates order of columns in compound PKs, update indexes e.g. we don't need a btree index on a column if it is the first column in the compound PK index but we do need a btree index for the later columns in a compound PK (searches on first column of a compound index are just as fast as searches on a btree index for that column alone, but searches on the 2nd or 3rd column in a compound index are significantly slower than on dedicated indexes)
This commit is contained in:
parent
82de252160
commit
da8d0af6df
@ -1,7 +1,7 @@
|
|||||||
-- +goose Up
|
-- +goose Up
|
||||||
CREATE TABLE IF NOT EXISTS public.blocks (
|
CREATE TABLE IF NOT EXISTS public.blocks (
|
||||||
block_number BIGINT NOT NULL,
|
block_number BIGINT NOT NULL,
|
||||||
key TEXT UNIQUE NOT NULL,
|
key TEXT NOT NULL,
|
||||||
data BYTEA NOT NULL,
|
data BYTEA NOT NULL,
|
||||||
PRIMARY KEY (key, block_number)
|
PRIMARY KEY (key, block_number)
|
||||||
);
|
);
|
||||||
|
@ -9,7 +9,7 @@ CREATE TABLE IF NOT EXISTS eth.state_cids (
|
|||||||
diff BOOLEAN NOT NULL DEFAULT FALSE,
|
diff BOOLEAN NOT NULL DEFAULT FALSE,
|
||||||
mh_key TEXT NOT NULL,
|
mh_key TEXT NOT NULL,
|
||||||
FOREIGN KEY (mh_key, block_number) REFERENCES public.blocks (key, block_number) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
FOREIGN KEY (mh_key, block_number) REFERENCES public.blocks (key, block_number) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
||||||
PRIMARY KEY (header_id, state_path)
|
PRIMARY KEY (state_path, header_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
-- +goose Down
|
-- +goose Down
|
||||||
|
@ -10,8 +10,8 @@ CREATE TABLE IF NOT EXISTS eth.storage_cids (
|
|||||||
diff BOOLEAN NOT NULL DEFAULT FALSE,
|
diff BOOLEAN NOT NULL DEFAULT FALSE,
|
||||||
mh_key TEXT NOT NULL,
|
mh_key TEXT NOT NULL,
|
||||||
FOREIGN KEY (mh_key, block_number) REFERENCES public.blocks (key, block_number) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
FOREIGN KEY (mh_key, block_number) REFERENCES public.blocks (key, block_number) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
||||||
FOREIGN KEY (header_id, state_path) REFERENCES eth.state_cids (header_id, state_path) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
FOREIGN KEY (state_path, header_id) REFERENCES eth.state_cids (state_path, header_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
||||||
PRIMARY KEY (header_id, state_path, storage_path)
|
PRIMARY KEY (storage_path, state_path, header_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
-- +goose Down
|
-- +goose Down
|
||||||
|
@ -7,8 +7,8 @@ CREATE TABLE IF NOT EXISTS eth.state_accounts (
|
|||||||
nonce BIGINT NOT NULL,
|
nonce BIGINT NOT NULL,
|
||||||
code_hash BYTEA NOT NULL,
|
code_hash BYTEA NOT NULL,
|
||||||
storage_root VARCHAR(66) NOT NULL,
|
storage_root VARCHAR(66) NOT NULL,
|
||||||
FOREIGN KEY (header_id, state_path) REFERENCES eth.state_cids (header_id, state_path) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
FOREIGN KEY (state_path, header_id) REFERENCES eth.state_cids (state_path, header_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
|
||||||
PRIMARY KEY (header_id, state_path)
|
PRIMARY KEY (state_path, header_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
-- +goose Down
|
-- +goose Down
|
||||||
|
@ -2,26 +2,27 @@
|
|||||||
-- header indexes
|
-- header indexes
|
||||||
CREATE INDEX header_block_number_index ON eth.header_cids USING brin (block_number);
|
CREATE INDEX header_block_number_index ON eth.header_cids USING brin (block_number);
|
||||||
CREATE UNIQUE INDEX header_cid_index ON eth.header_cids USING btree (cid);
|
CREATE UNIQUE INDEX header_cid_index ON eth.header_cids USING btree (cid);
|
||||||
CREATE UNIQUE INDEX header_mh_index ON eth.header_cids USING btree (mh_key);
|
CREATE UNIQUE INDEX header_mh_block_number_index ON eth.header_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX state_root_index ON eth.header_cids USING btree (state_root);
|
CREATE INDEX state_root_index ON eth.header_cids USING btree (state_root);
|
||||||
CREATE INDEX timestamp_index ON eth.header_cids USING brin (timestamp);
|
CREATE INDEX timestamp_index ON eth.header_cids USING brin (timestamp);
|
||||||
|
|
||||||
-- uncle indexes
|
-- uncle indexes
|
||||||
CREATE INDEX uncle_block_number_index ON eth.uncle_cids USING brin (block_number);
|
CREATE INDEX uncle_block_number_index ON eth.uncle_cids USING brin (block_number);
|
||||||
|
CREATE UNIQUE INDEX uncle_mh_block_number_index ON eth.uncle_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX uncle_header_id_index ON eth.uncle_cids USING btree (header_id);
|
CREATE INDEX uncle_header_id_index ON eth.uncle_cids USING btree (header_id);
|
||||||
|
|
||||||
-- transaction indexes
|
-- transaction indexes
|
||||||
CREATE INDEX tx_block_number_index ON eth.transaction_cids USING brin (block_number);
|
CREATE INDEX tx_block_number_index ON eth.transaction_cids USING brin (block_number);
|
||||||
CREATE INDEX tx_header_id_index ON eth.transaction_cids USING btree (header_id);
|
CREATE INDEX tx_header_id_index ON eth.transaction_cids USING btree (header_id);
|
||||||
CREATE UNIQUE INDEX tx_cid_index ON eth.transaction_cids USING btree (cid);
|
CREATE UNIQUE INDEX tx_cid_index ON eth.transaction_cids USING btree (cid);
|
||||||
CREATE UNIQUE INDEX tx_mh_index ON eth.transaction_cids USING btree (mh_key);
|
CREATE UNIQUE INDEX tx_mh_block_number_index ON eth.transaction_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX tx_dst_index ON eth.transaction_cids USING btree (dst);
|
CREATE INDEX tx_dst_index ON eth.transaction_cids USING btree (dst);
|
||||||
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
||||||
|
|
||||||
-- receipt indexes
|
-- receipt indexes
|
||||||
CREATE INDEX rct_block_number_index ON eth.receipt_cids USING brin (block_number);
|
CREATE INDEX rct_block_number_index ON eth.receipt_cids USING brin (block_number);
|
||||||
CREATE INDEX rct_leaf_cid_index ON eth.receipt_cids USING btree (leaf_cid);
|
CREATE INDEX rct_leaf_cid_index ON eth.receipt_cids USING btree (leaf_cid);
|
||||||
CREATE INDEX rct_leaf_mh_index ON eth.receipt_cids USING btree (leaf_mh_key);
|
CREATE INDEX rct_leaf_mh_block_number_index ON eth.receipt_cids USING btree (leaf_mh_key, block_number);
|
||||||
CREATE INDEX rct_contract_index ON eth.receipt_cids USING btree (contract);
|
CREATE INDEX rct_contract_index ON eth.receipt_cids USING btree (contract);
|
||||||
CREATE INDEX rct_contract_hash_index ON eth.receipt_cids USING btree (contract_hash);
|
CREATE INDEX rct_contract_hash_index ON eth.receipt_cids USING btree (contract_hash);
|
||||||
|
|
||||||
@ -29,8 +30,8 @@ CREATE INDEX rct_contract_hash_index ON eth.receipt_cids USING btree (contract_h
|
|||||||
CREATE INDEX state_block_number_index ON eth.state_cids USING brin (block_number);
|
CREATE INDEX state_block_number_index ON eth.state_cids USING brin (block_number);
|
||||||
CREATE INDEX state_leaf_key_index ON eth.state_cids USING btree (state_leaf_key);
|
CREATE INDEX state_leaf_key_index ON eth.state_cids USING btree (state_leaf_key);
|
||||||
CREATE INDEX state_cid_index ON eth.state_cids USING btree (cid);
|
CREATE INDEX state_cid_index ON eth.state_cids USING btree (cid);
|
||||||
CREATE INDEX state_mh_index ON eth.state_cids USING btree (mh_key);
|
CREATE INDEX state_mh_block_number_index ON eth.state_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX state_path_index ON eth.state_cids USING btree (state_path);
|
CREATE INDEX state_header_id_index ON eth.state_cids USING btree (header_id);
|
||||||
CREATE INDEX state_node_type_index ON eth.state_cids USING btree (node_type);
|
CREATE INDEX state_node_type_index ON eth.state_cids USING btree (node_type);
|
||||||
|
|
||||||
-- storage node indexes
|
-- storage node indexes
|
||||||
@ -38,14 +39,14 @@ CREATE INDEX storage_block_number_index ON eth.storage_cids USING brin (block_nu
|
|||||||
CREATE INDEX storage_state_path_index ON eth.storage_cids USING btree (state_path);
|
CREATE INDEX storage_state_path_index ON eth.storage_cids USING btree (state_path);
|
||||||
CREATE INDEX storage_leaf_key_index ON eth.storage_cids USING btree (storage_leaf_key);
|
CREATE INDEX storage_leaf_key_index ON eth.storage_cids USING btree (storage_leaf_key);
|
||||||
CREATE INDEX storage_cid_index ON eth.storage_cids USING btree (cid);
|
CREATE INDEX storage_cid_index ON eth.storage_cids USING btree (cid);
|
||||||
CREATE INDEX storage_mh_index ON eth.storage_cids USING btree (mh_key);
|
CREATE INDEX storage_mh_block_number_index ON eth.storage_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX storage_path_index ON eth.storage_cids USING btree (storage_path);
|
CREATE INDEX storage_header_id_index ON eth.storage_cids USING btree (header_id);
|
||||||
CREATE INDEX storage_node_type_index ON eth.storage_cids USING btree (node_type);
|
CREATE INDEX storage_node_type_index ON eth.storage_cids USING btree (node_type);
|
||||||
|
|
||||||
-- state accounts indexes
|
-- state accounts indexes
|
||||||
CREATE INDEX account_block_number_index ON eth.state_accounts USING brin (block_number);
|
CREATE INDEX account_block_number_index ON eth.state_accounts USING brin (block_number);
|
||||||
CREATE INDEX account_state_path_index ON eth.state_accounts USING btree (state_path);
|
CREATE INDEX account_header_id_index ON eth.state_accounts USING btree (header_id);
|
||||||
CREATE INDEX storage_root_index ON eth.state_accounts USING btree (storage_root);
|
CREATE INDEX account_storage_root_index ON eth.state_accounts USING btree (storage_root);
|
||||||
|
|
||||||
-- access list indexes
|
-- access list indexes
|
||||||
CREATE INDEX access_list_block_number_index ON eth.access_list_elements USING brin (block_number);
|
CREATE INDEX access_list_block_number_index ON eth.access_list_elements USING brin (block_number);
|
||||||
@ -54,7 +55,7 @@ CREATE INDEX access_list_storage_keys_index ON eth.access_list_elements USING gi
|
|||||||
|
|
||||||
-- log indexes
|
-- log indexes
|
||||||
CREATE INDEX log_block_number_index ON eth.log_cids USING brin (block_number);
|
CREATE INDEX log_block_number_index ON eth.log_cids USING brin (block_number);
|
||||||
CREATE INDEX log_mh_index ON eth.log_cids USING btree (leaf_mh_key);
|
CREATE INDEX log_leaf_mh_block_number_index ON eth.log_cids USING btree (leaf_mh_key, block_number);
|
||||||
CREATE INDEX log_cid_index ON eth.log_cids USING btree (leaf_cid);
|
CREATE INDEX log_cid_index ON eth.log_cids USING btree (leaf_cid);
|
||||||
CREATE INDEX log_address_index ON eth.log_cids USING btree (address);
|
CREATE INDEX log_address_index ON eth.log_cids USING btree (address);
|
||||||
CREATE INDEX log_topic0_index ON eth.log_cids USING btree (topic0);
|
CREATE INDEX log_topic0_index ON eth.log_cids USING btree (topic0);
|
||||||
@ -70,7 +71,7 @@ DROP INDEX eth.log_topic1_index;
|
|||||||
DROP INDEX eth.log_topic0_index;
|
DROP INDEX eth.log_topic0_index;
|
||||||
DROP INDEX eth.log_address_index;
|
DROP INDEX eth.log_address_index;
|
||||||
DROP INDEX eth.log_cid_index;
|
DROP INDEX eth.log_cid_index;
|
||||||
DROP INDEX eth.log_mh_index;
|
DROP INDEX eth.log_leaf_mh_block_number_index;
|
||||||
DROP INDEX eth.log_block_number_index;
|
DROP INDEX eth.log_block_number_index;
|
||||||
|
|
||||||
-- access list indexes
|
-- access list indexes
|
||||||
@ -79,14 +80,14 @@ DROP INDEX eth.access_list_element_address_index;
|
|||||||
DROP INDEX eth.access_list_block_number_index;
|
DROP INDEX eth.access_list_block_number_index;
|
||||||
|
|
||||||
-- state account indexes
|
-- state account indexes
|
||||||
DROP INDEX eth.storage_root_index;
|
DROP INDEX eth.account_storage_root_index;
|
||||||
DROP index eth.account_state_path_index;
|
DROP index eth.account_header_id_index;
|
||||||
DROP INDEX eth.account_block_number_index;
|
DROP INDEX eth.account_block_number_index;
|
||||||
|
|
||||||
-- storage node indexes
|
-- storage node indexes
|
||||||
DROP INDEX eth.storage_node_type_index;
|
DROP INDEX eth.storage_node_type_index;
|
||||||
DROP INDEX eth.storage_path_index;
|
DROP INDEX eth.storage_header_id_index;
|
||||||
DROP INDEX eth.storage_mh_index;
|
DROP INDEX eth.storage_mh_block_number_index;
|
||||||
DROP INDEX eth.storage_cid_index;
|
DROP INDEX eth.storage_cid_index;
|
||||||
DROP INDEX eth.storage_leaf_key_index;
|
DROP INDEX eth.storage_leaf_key_index;
|
||||||
DROP INDEX eth.storage_state_path_index;
|
DROP INDEX eth.storage_state_path_index;
|
||||||
@ -94,8 +95,8 @@ DROP INDEX eth.storage_block_number_index;
|
|||||||
|
|
||||||
-- state node indexes
|
-- state node indexes
|
||||||
DROP INDEX eth.state_node_type_index;
|
DROP INDEX eth.state_node_type_index;
|
||||||
DROP INDEX eth.state_path_index;
|
DROP INDEX eth.state_header_id_index;
|
||||||
DROP INDEX eth.state_mh_index;
|
DROP INDEX eth.state_mh_block_number_index;
|
||||||
DROP INDEX eth.state_cid_index;
|
DROP INDEX eth.state_cid_index;
|
||||||
DROP INDEX eth.state_leaf_key_index;
|
DROP INDEX eth.state_leaf_key_index;
|
||||||
DROP INDEX eth.state_block_number_index;
|
DROP INDEX eth.state_block_number_index;
|
||||||
@ -103,25 +104,26 @@ DROP INDEX eth.state_block_number_index;
|
|||||||
-- receipt indexes
|
-- receipt indexes
|
||||||
DROP INDEX eth.rct_contract_hash_index;
|
DROP INDEX eth.rct_contract_hash_index;
|
||||||
DROP INDEX eth.rct_contract_index;
|
DROP INDEX eth.rct_contract_index;
|
||||||
DROP INDEX eth.rct_leaf_mh_index;
|
DROP INDEX eth.rct_leaf_mh_block_number_index;
|
||||||
DROP INDEX eth.rct_leaf_cid_index;
|
DROP INDEX eth.rct_leaf_cid_index;
|
||||||
DROP INDEX eth.rct_block_number_index;
|
DROP INDEX eth.rct_block_number_index;
|
||||||
|
|
||||||
-- transaction indexes
|
-- transaction indexes
|
||||||
DROP INDEX eth.tx_src_index;
|
DROP INDEX eth.tx_src_index;
|
||||||
DROP INDEX eth.tx_dst_index;
|
DROP INDEX eth.tx_dst_index;
|
||||||
DROP INDEX eth.tx_mh_index;
|
DROP INDEX eth.tx_mh_block_number_index;
|
||||||
DROP INDEX eth.tx_cid_index;
|
DROP INDEX eth.tx_cid_index;
|
||||||
DROP INDEX eth.tx_header_id_index;
|
DROP INDEX eth.tx_header_id_index;
|
||||||
DROP INDEX eth.tx_block_number_index;
|
DROP INDEX eth.tx_block_number_index;
|
||||||
|
|
||||||
-- uncle indexes
|
-- uncle indexes
|
||||||
DROP INDEX eth.uncle_header_id_index;
|
|
||||||
DROP INDEX eth.uncle_block_number_index;
|
DROP INDEX eth.uncle_block_number_index;
|
||||||
|
DROP INDEX eth.uncle_mh_block_number_index;
|
||||||
|
DROP INDEX eth.uncle_header_id_index;
|
||||||
|
|
||||||
-- header indexes
|
-- header indexes
|
||||||
DROP INDEX eth.timestamp_index;
|
DROP INDEX eth.timestamp_index;
|
||||||
DROP INDEX eth.state_root_index;
|
DROP INDEX eth.state_root_index;
|
||||||
DROP INDEX eth.header_mh_index;
|
DROP INDEX eth.header_mh_block_number_index;
|
||||||
DROP INDEX eth.header_cid_index;
|
DROP INDEX eth.header_cid_index;
|
||||||
DROP INDEX eth.header_block_number_index;
|
DROP INDEX eth.header_block_number_index;
|
||||||
|
@ -9,13 +9,13 @@ ALTER TABLE eth.log_cids
|
|||||||
ADD CONSTRAINT pk_eth_log_cids PRIMARY KEY (rct_id, index);
|
ADD CONSTRAINT pk_eth_log_cids PRIMARY KEY (rct_id, index);
|
||||||
|
|
||||||
ALTER TABLE eth.state_cids
|
ALTER TABLE eth.state_cids
|
||||||
ADD CONSTRAINT pk_eth_state_cids PRIMARY KEY (header_id, state_path);
|
ADD CONSTRAINT pk_eth_state_cids PRIMARY KEY (state_path, header_id);
|
||||||
|
|
||||||
ALTER TABLE eth.storage_cids
|
ALTER TABLE eth.storage_cids
|
||||||
ADD CONSTRAINT pk_eth_storage_cids PRIMARY KEY (header_id, state_path, storage_path);
|
ADD CONSTRAINT pk_eth_storage_cids PRIMARY KEY (storage_path, state_path, header_id);
|
||||||
|
|
||||||
ALTER TABLE eth.state_accounts
|
ALTER TABLE eth.state_accounts
|
||||||
ADD CONSTRAINT pk_eth_state_accounts PRIMARY KEY (header_id, state_path);
|
ADD CONSTRAINT pk_eth_state_accounts PRIMARY KEY (state_path, header_id);
|
||||||
|
|
||||||
-- +goose Down
|
-- +goose Down
|
||||||
ALTER TABLE eth.state_accounts
|
ALTER TABLE eth.state_accounts
|
||||||
|
@ -56,12 +56,12 @@ ADD CONSTRAINT fk_storage_mh_key
|
|||||||
|
|
||||||
ALTER TABLE eth.storage_cids
|
ALTER TABLE eth.storage_cids
|
||||||
ADD CONSTRAINT fk_storage_header_id_state_path
|
ADD CONSTRAINT fk_storage_header_id_state_path
|
||||||
FOREIGN KEY (header_id, state_path) REFERENCES eth.state_cids (header_id, state_path)
|
FOREIGN KEY (state_path, header_id) REFERENCES eth.state_cids (state_path, header_id)
|
||||||
ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
|
ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
|
||||||
|
|
||||||
ALTER TABLE eth.state_accounts
|
ALTER TABLE eth.state_accounts
|
||||||
ADD CONSTRAINT fk_account_header_id_state_path
|
ADD CONSTRAINT fk_account_header_id_state_path
|
||||||
FOREIGN KEY (header_id, state_path) REFERENCES eth.state_cids (header_id, state_path)
|
FOREIGN KEY (state_path, header_id) REFERENCES eth.state_cids (state_path, header_id)
|
||||||
ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
|
ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
|
||||||
|
|
||||||
ALTER TABLE eth.access_list_elements
|
ALTER TABLE eth.access_list_elements
|
||||||
|
@ -2,26 +2,27 @@
|
|||||||
-- header indexes
|
-- header indexes
|
||||||
CREATE INDEX header_block_number_index ON eth.header_cids USING brin (block_number);
|
CREATE INDEX header_block_number_index ON eth.header_cids USING brin (block_number);
|
||||||
CREATE UNIQUE INDEX header_cid_index ON eth.header_cids USING btree (cid);
|
CREATE UNIQUE INDEX header_cid_index ON eth.header_cids USING btree (cid);
|
||||||
CREATE UNIQUE INDEX header_mh_index ON eth.header_cids USING btree (mh_key);
|
CREATE UNIQUE INDEX header_mh_block_number_index ON eth.header_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX state_root_index ON eth.header_cids USING btree (state_root);
|
CREATE INDEX state_root_index ON eth.header_cids USING btree (state_root);
|
||||||
CREATE INDEX timestamp_index ON eth.header_cids USING brin (timestamp);
|
CREATE INDEX timestamp_index ON eth.header_cids USING brin (timestamp);
|
||||||
|
|
||||||
-- uncle indexes
|
-- uncle indexes
|
||||||
CREATE INDEX uncle_block_number_index ON eth.uncle_cids USING brin (block_number);
|
CREATE INDEX uncle_block_number_index ON eth.uncle_cids USING brin (block_number);
|
||||||
|
CREATE UNIQUE INDEX uncle_mh_block_number_index ON eth.uncle_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX uncle_header_id_index ON eth.uncle_cids USING btree (header_id);
|
CREATE INDEX uncle_header_id_index ON eth.uncle_cids USING btree (header_id);
|
||||||
|
|
||||||
-- transaction indexes
|
-- transaction indexes
|
||||||
CREATE INDEX tx_block_number_index ON eth.transaction_cids USING brin (block_number);
|
CREATE INDEX tx_block_number_index ON eth.transaction_cids USING brin (block_number);
|
||||||
CREATE INDEX tx_header_id_index ON eth.transaction_cids USING btree (header_id);
|
CREATE INDEX tx_header_id_index ON eth.transaction_cids USING btree (header_id);
|
||||||
CREATE UNIQUE INDEX tx_cid_index ON eth.transaction_cids USING btree (cid);
|
CREATE UNIQUE INDEX tx_cid_index ON eth.transaction_cids USING btree (cid);
|
||||||
CREATE UNIQUE INDEX tx_mh_index ON eth.transaction_cids USING btree (mh_key);
|
CREATE UNIQUE INDEX tx_mh_block_number_index ON eth.transaction_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX tx_dst_index ON eth.transaction_cids USING btree (dst);
|
CREATE INDEX tx_dst_index ON eth.transaction_cids USING btree (dst);
|
||||||
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
||||||
|
|
||||||
-- receipt indexes
|
-- receipt indexes
|
||||||
CREATE INDEX rct_block_number_index ON eth.receipt_cids USING brin (block_number);
|
CREATE INDEX rct_block_number_index ON eth.receipt_cids USING brin (block_number);
|
||||||
CREATE INDEX rct_leaf_cid_index ON eth.receipt_cids USING btree (leaf_cid);
|
CREATE INDEX rct_leaf_cid_index ON eth.receipt_cids USING btree (leaf_cid);
|
||||||
CREATE INDEX rct_leaf_mh_index ON eth.receipt_cids USING btree (leaf_mh_key);
|
CREATE INDEX rct_leaf_mh_block_number_index ON eth.receipt_cids USING btree (leaf_mh_key, block_number);
|
||||||
CREATE INDEX rct_contract_index ON eth.receipt_cids USING btree (contract);
|
CREATE INDEX rct_contract_index ON eth.receipt_cids USING btree (contract);
|
||||||
CREATE INDEX rct_contract_hash_index ON eth.receipt_cids USING btree (contract_hash);
|
CREATE INDEX rct_contract_hash_index ON eth.receipt_cids USING btree (contract_hash);
|
||||||
|
|
||||||
@ -29,8 +30,8 @@ CREATE INDEX rct_contract_hash_index ON eth.receipt_cids USING btree (contract_h
|
|||||||
CREATE INDEX state_block_number_index ON eth.state_cids USING brin (block_number);
|
CREATE INDEX state_block_number_index ON eth.state_cids USING brin (block_number);
|
||||||
CREATE INDEX state_leaf_key_index ON eth.state_cids USING btree (state_leaf_key);
|
CREATE INDEX state_leaf_key_index ON eth.state_cids USING btree (state_leaf_key);
|
||||||
CREATE INDEX state_cid_index ON eth.state_cids USING btree (cid);
|
CREATE INDEX state_cid_index ON eth.state_cids USING btree (cid);
|
||||||
CREATE INDEX state_mh_index ON eth.state_cids USING btree (mh_key);
|
CREATE INDEX state_mh_block_number_index ON eth.state_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX state_path_index ON eth.state_cids USING btree (state_path);
|
CREATE INDEX state_header_id_index ON eth.state_cids USING btree (header_id);
|
||||||
CREATE INDEX state_node_type_index ON eth.state_cids USING btree (node_type);
|
CREATE INDEX state_node_type_index ON eth.state_cids USING btree (node_type);
|
||||||
|
|
||||||
-- storage node indexes
|
-- storage node indexes
|
||||||
@ -38,14 +39,14 @@ CREATE INDEX storage_block_number_index ON eth.storage_cids USING brin (block_nu
|
|||||||
CREATE INDEX storage_state_path_index ON eth.storage_cids USING btree (state_path);
|
CREATE INDEX storage_state_path_index ON eth.storage_cids USING btree (state_path);
|
||||||
CREATE INDEX storage_leaf_key_index ON eth.storage_cids USING btree (storage_leaf_key);
|
CREATE INDEX storage_leaf_key_index ON eth.storage_cids USING btree (storage_leaf_key);
|
||||||
CREATE INDEX storage_cid_index ON eth.storage_cids USING btree (cid);
|
CREATE INDEX storage_cid_index ON eth.storage_cids USING btree (cid);
|
||||||
CREATE INDEX storage_mh_index ON eth.storage_cids USING btree (mh_key);
|
CREATE INDEX storage_mh_block_number_index ON eth.storage_cids USING btree (mh_key, block_number);
|
||||||
CREATE INDEX storage_path_index ON eth.storage_cids USING btree (storage_path);
|
CREATE INDEX storage_header_id_index ON eth.storage_cids USING btree (header_id);
|
||||||
CREATE INDEX storage_node_type_index ON eth.storage_cids USING btree (node_type);
|
CREATE INDEX storage_node_type_index ON eth.storage_cids USING btree (node_type);
|
||||||
|
|
||||||
-- state accounts indexes
|
-- state accounts indexes
|
||||||
CREATE INDEX account_block_number_index ON eth.state_accounts USING brin (block_number);
|
CREATE INDEX account_block_number_index ON eth.state_accounts USING brin (block_number);
|
||||||
CREATE INDEX account_state_path_index ON eth.state_accounts USING btree (state_path);
|
CREATE INDEX account_header_id_index ON eth.state_accounts USING btree (header_id);
|
||||||
CREATE INDEX storage_root_index ON eth.state_accounts USING btree (storage_root);
|
CREATE INDEX account_storage_root_index ON eth.state_accounts USING btree (storage_root);
|
||||||
|
|
||||||
-- access list indexes
|
-- access list indexes
|
||||||
CREATE INDEX access_list_block_number_index ON eth.access_list_elements USING brin (block_number);
|
CREATE INDEX access_list_block_number_index ON eth.access_list_elements USING brin (block_number);
|
||||||
@ -54,8 +55,8 @@ CREATE INDEX access_list_storage_keys_index ON eth.access_list_elements USING gi
|
|||||||
|
|
||||||
-- log indexes
|
-- log indexes
|
||||||
CREATE INDEX log_block_number_index ON eth.log_cids USING brin (block_number);
|
CREATE INDEX log_block_number_index ON eth.log_cids USING brin (block_number);
|
||||||
|
CREATE INDEX log_leaf_mh_block_number_index ON eth.log_cids USING btree (leaf_mh_key, block_number);
|
||||||
CREATE INDEX log_cid_index ON eth.log_cids USING btree (leaf_cid);
|
CREATE INDEX log_cid_index ON eth.log_cids USING btree (leaf_cid);
|
||||||
CREATE INDEX log_mh_index ON eth.log_cids USING btree (leaf_mh_key);
|
|
||||||
CREATE INDEX log_address_index ON eth.log_cids USING btree (address);
|
CREATE INDEX log_address_index ON eth.log_cids USING btree (address);
|
||||||
CREATE INDEX log_topic0_index ON eth.log_cids USING btree (topic0);
|
CREATE INDEX log_topic0_index ON eth.log_cids USING btree (topic0);
|
||||||
CREATE INDEX log_topic1_index ON eth.log_cids USING btree (topic1);
|
CREATE INDEX log_topic1_index ON eth.log_cids USING btree (topic1);
|
||||||
@ -69,8 +70,8 @@ DROP INDEX eth.log_topic2_index;
|
|||||||
DROP INDEX eth.log_topic1_index;
|
DROP INDEX eth.log_topic1_index;
|
||||||
DROP INDEX eth.log_topic0_index;
|
DROP INDEX eth.log_topic0_index;
|
||||||
DROP INDEX eth.log_address_index;
|
DROP INDEX eth.log_address_index;
|
||||||
DROP INDEX eth.log_mh_index;
|
|
||||||
DROP INDEX eth.log_cid_index;
|
DROP INDEX eth.log_cid_index;
|
||||||
|
DROP INDEX eth.log_leaf_mh_block_number_index;
|
||||||
DROP INDEX eth.log_block_number_index;
|
DROP INDEX eth.log_block_number_index;
|
||||||
|
|
||||||
-- access list indexes
|
-- access list indexes
|
||||||
@ -79,14 +80,14 @@ DROP INDEX eth.access_list_element_address_index;
|
|||||||
DROP INDEX eth.access_list_block_number_index;
|
DROP INDEX eth.access_list_block_number_index;
|
||||||
|
|
||||||
-- state account indexes
|
-- state account indexes
|
||||||
DROP INDEX eth.storage_root_index;
|
DROP INDEX eth.account_storage_root_index;
|
||||||
DROP index eth.account_state_path_index;
|
DROP index eth.account_header_id_index;
|
||||||
DROP INDEX eth.account_block_number_index;
|
DROP INDEX eth.account_block_number_index;
|
||||||
|
|
||||||
-- storage node indexes
|
-- storage node indexes
|
||||||
DROP INDEX eth.storage_node_type_index;
|
DROP INDEX eth.storage_node_type_index;
|
||||||
DROP INDEX eth.storage_path_index;
|
DROP INDEX eth.storage_header_id_index;
|
||||||
DROP INDEX eth.storage_mh_index;
|
DROP INDEX eth.storage_mh_block_number_index;
|
||||||
DROP INDEX eth.storage_cid_index;
|
DROP INDEX eth.storage_cid_index;
|
||||||
DROP INDEX eth.storage_leaf_key_index;
|
DROP INDEX eth.storage_leaf_key_index;
|
||||||
DROP INDEX eth.storage_state_path_index;
|
DROP INDEX eth.storage_state_path_index;
|
||||||
@ -94,8 +95,8 @@ DROP INDEX eth.storage_block_number_index;
|
|||||||
|
|
||||||
-- state node indexes
|
-- state node indexes
|
||||||
DROP INDEX eth.state_node_type_index;
|
DROP INDEX eth.state_node_type_index;
|
||||||
DROP INDEX eth.state_path_index;
|
DROP INDEX eth.state_header_id_index;
|
||||||
DROP INDEX eth.state_mh_index;
|
DROP INDEX eth.state_mh_block_number_index;
|
||||||
DROP INDEX eth.state_cid_index;
|
DROP INDEX eth.state_cid_index;
|
||||||
DROP INDEX eth.state_leaf_key_index;
|
DROP INDEX eth.state_leaf_key_index;
|
||||||
DROP INDEX eth.state_block_number_index;
|
DROP INDEX eth.state_block_number_index;
|
||||||
@ -103,25 +104,26 @@ DROP INDEX eth.state_block_number_index;
|
|||||||
-- receipt indexes
|
-- receipt indexes
|
||||||
DROP INDEX eth.rct_contract_hash_index;
|
DROP INDEX eth.rct_contract_hash_index;
|
||||||
DROP INDEX eth.rct_contract_index;
|
DROP INDEX eth.rct_contract_index;
|
||||||
DROP INDEX eth.rct_leaf_mh_index;
|
DROP INDEX eth.rct_leaf_mh_block_number_index;
|
||||||
DROP INDEX eth.rct_leaf_cid_index;
|
DROP INDEX eth.rct_leaf_cid_index;
|
||||||
DROP INDEX eth.rct_block_number_index;
|
DROP INDEX eth.rct_block_number_index;
|
||||||
|
|
||||||
-- transaction indexes
|
-- transaction indexes
|
||||||
DROP INDEX eth.tx_src_index;
|
DROP INDEX eth.tx_src_index;
|
||||||
DROP INDEX eth.tx_dst_index;
|
DROP INDEX eth.tx_dst_index;
|
||||||
DROP INDEX eth.tx_mh_index;
|
DROP INDEX eth.tx_mh_block_number_index;
|
||||||
DROP INDEX eth.tx_cid_index;
|
DROP INDEX eth.tx_cid_index;
|
||||||
DROP INDEX eth.tx_header_id_index;
|
DROP INDEX eth.tx_header_id_index;
|
||||||
DROP INDEX eth.tx_block_number_index;
|
DROP INDEX eth.tx_block_number_index;
|
||||||
|
|
||||||
-- uncle indexes
|
-- uncle indexes
|
||||||
DROP INDEX eth.uncle_header_id_index;
|
|
||||||
DROP INDEX eth.uncle_block_number_index;
|
DROP INDEX eth.uncle_block_number_index;
|
||||||
|
DROP INDEX eth.uncle_mh_block_number_index;
|
||||||
|
DROP INDEX eth.uncle_header_id_index;
|
||||||
|
|
||||||
-- header indexes
|
-- header indexes
|
||||||
DROP INDEX eth.timestamp_index;
|
DROP INDEX eth.timestamp_index;
|
||||||
DROP INDEX eth.state_root_index;
|
DROP INDEX eth.state_root_index;
|
||||||
DROP INDEX eth.header_mh_index;
|
DROP INDEX eth.header_mh_block_number_index;
|
||||||
DROP INDEX eth.header_cid_index;
|
DROP INDEX eth.header_cid_index;
|
||||||
DROP INDEX eth.header_block_number_index;
|
DROP INDEX eth.header_block_number_index;
|
||||||
|
Loading…
Reference in New Issue
Block a user