mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-06 15:46:37 +08:00
refactor(migration): merge per-plugin SQL into single initial migration
Each plugin now has exactly one migration file (00001_initial.sql) containing its complete table schema and seed data, replacing the multi-file approach with split ALTER/INSERT steps. Changes per plugin: - auth: w_auth_sources, w_external_accounts, w_access_tokens + login session seed - user: w_users + system user seed (removed w_access_tokens — belongs to auth) - admin: w_system_configs, w_templates + all 32 config seeds + 2 template seeds (removed w_schedules, w_task_executions — belong to driver plugins) - upload: w_upload_stats + indexes + access_mode + backfill - message_gateway: all w_message_*, w_push_*, w_push_channels, w_push_histories - risk_control/logstore: w_user_access_logs (PG + ClickHouse) - driver_asynq_cron: w_schedules + cleanup seed - driver_asynq_worker: w_task_executions All CREATE TABLE use IF NOT EXISTS, all INSERT use ON CONFLICT DO NOTHING. go:embed patterns remain 'migrations/*.sql' — unchanged.
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE IF NOT EXISTS w_user_access_logs (
|
||||
id BIGINT NOT NULL,
|
||||
user_id BIGINT NOT NULL DEFAULT 0,
|
||||
path VARCHAR(2048) NOT NULL DEFAULT '',
|
||||
method VARCHAR(16) NOT NULL DEFAULT '',
|
||||
ip VARCHAR(128) NOT NULL DEFAULT '',
|
||||
user_agent TEXT NOT NULL DEFAULT '',
|
||||
headers TEXT NOT NULL DEFAULT '',
|
||||
status INTEGER NOT NULL DEFAULT 0,
|
||||
latency BIGINT NOT NULL DEFAULT 0,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (id, created_at)
|
||||
) PARTITION BY RANGE (created_at);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_w_user_access_logs_user_id ON w_user_access_logs (user_id, created_at DESC);
|
||||
CREATE INDEX IF NOT EXISTS idx_w_user_access_logs_created_at ON w_user_access_logs (created_at DESC);
|
||||
|
||||
-- +goose Down
|
||||
DROP TABLE IF EXISTS w_user_access_logs;
|
||||
Reference in New Issue
Block a user