Files
Pijus Kamandulis 4fc3a7fb0a Migrate to postgres
2026-08-08 01:26:32 +03:00

70 lines
1.8 KiB
SQL

CREATE TABLE IF NOT EXISTS shares (
id BIGSERIAL PRIMARY KEY,
work_info_id BIGINT NOT NULL,
client_id INT NOT NULL,
enonce1 TEXT,
nonce2 TEXT,
nonce TEXT,
ntime TEXT,
diff DOUBLE PRECISION NOT NULL,
sdiff DOUBLE PRECISION NOT NULL,
hash TEXT,
result BOOLEAN,
errn INT,
create_date TEXT NOT NULL,
create_ts TIMESTAMPTZ NOT NULL,
create_by TEXT,
create_code TEXT,
create_inet TEXT,
worker_name TEXT,
username TEXT,
address TEXT,
agent TEXT
);
CREATE INDEX IF NOT EXISTS shares_create_ts_desc ON shares (create_ts DESC);
CREATE INDEX IF NOT EXISTS shares_sdiff_desc ON shares (sdiff DESC);
CREATE INDEX IF NOT EXISTS shares_create_ts_sdiff ON shares (create_ts, sdiff DESC);
CREATE TABLE IF NOT EXISTS top_shares (
id BIGSERIAL PRIMARY KEY,
work_info_id BIGINT NOT NULL,
client_id INT NOT NULL,
enonce1 TEXT,
nonce2 TEXT,
nonce TEXT,
ntime TEXT,
diff DOUBLE PRECISION NOT NULL,
sdiff DOUBLE PRECISION NOT NULL,
hash TEXT,
result BOOLEAN,
errn INT,
create_date TEXT NOT NULL,
create_ts TIMESTAMPTZ NOT NULL,
create_by TEXT,
create_code TEXT,
create_inet TEXT,
worker_name TEXT,
username TEXT,
address TEXT,
agent TEXT
);
CREATE INDEX IF NOT EXISTS top_shares_sdiff_desc ON top_shares (sdiff DESC);
CREATE TABLE IF NOT EXISTS time_window_high_shares (
time_window_id TEXT PRIMARY KEY,
time_window_name TEXT NOT NULL,
sdiff DOUBLE PRECISION NOT NULL,
time TEXT NOT NULL
);
CREATE TABLE IF NOT EXISTS daily_stats (
date DATE PRIMARY KEY,
share_count INT NOT NULL,
top_share JSONB NOT NULL,
pool_hashrate DOUBLE PRECISION NOT NULL,
workers JSONB NOT NULL,
expires_at TIMESTAMPTZ NULL
);