【Rust】フレームワーク自作: セッションのレコードを自動削除

$ psql –version
psql (PostgreSQL) 14.15 (Ubuntu 14.15-0ubuntu0.22.04.1)
$ sudo apt install postgresql-14-cron
$ sudo vi /etc/postgresql/14/main/postgresql.conf

以下を追加
shared_preload_libraries = ‘pg_cron’
cron.database_name = ‘postgres’

$ sudo systemctl restart postgresql

$ CREATE EXTENSION IF NOT EXISTS pg_cron;

一時間おきに1日前に作成されたセッションを削除する設定にする
$ SELECT cron.schedule(‘delete_expired_sessions’, ‘0 * * * *’, $$
DELETE FROM ares_sessions
WHERE created_at < NOW() - INTERVAL '1 day' $$); cronではなく、psql自体にバッチ処理の仕組みが備わっているのは素晴らしいね。