Files

20 lines
725 B
MySQL
Raw Permalink Normal View History

-- Traces table for storing transaction traces
CREATE TABLE IF NOT EXISTS traces (
chain_id INTEGER NOT NULL,
transaction_hash VARCHAR(66) NOT NULL,
block_number BIGINT NOT NULL,
trace_data JSONB NOT NULL,
created_at TIMESTAMP DEFAULT NOW(),
PRIMARY KEY (chain_id, transaction_hash)
) PARTITION BY LIST (chain_id);
-- Create partition for ChainID 138
CREATE TABLE IF NOT EXISTS traces_chain_138 PARTITION OF traces FOR VALUES IN (138);
-- Index
CREATE INDEX IF NOT EXISTS idx_traces_chain_tx ON traces(chain_id, transaction_hash);
CREATE INDEX IF NOT EXISTS idx_traces_chain_block ON traces(chain_id, block_number);
CREATE INDEX IF NOT EXISTS idx_traces_data_gin ON traces USING GIN (trace_data);