-- Add migration script here CREATE TABLE sessions ( id SERIAL PRIMARY KEY, user_id INTEGER NOT NULL REFERENCES users(id), token TEXT NOT NULL UNIQUE, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, expires_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP + INTERVAL '7 days' ); CREATE OR REPLACE FUNCTION cleanup_expired_sessions() RETURNS TRIGGER AS $$ BEGIN DELETE FROM sessions WHERE expires_at < NOW(); RETURN NULL; END; $$ LANGUAGE plpgsql; CREATE TRIGGER trigger_cleanup_sessions AFTER INSERT ON sessions EXECUTE FUNCTION cleanup_expired_sessions();