前提・実現したいこと
いつもお世話になっております。guest_です。
PostgresのAutoVacuumが自動実行されない件について、ご教示願います。
以前まで、AutoVacuumが自動実行されていたのですが、ある日を境に実行されなくなりました。
pg_logを確認したところ、auto vacuumが実行されない原因のログは見つかりましたが、
ネットで調べても具体的な解決方法が見つからず、困っております。
どう対応すれば以前のように自動実行されるようになるのでしょうか。
または、どのような順序を追って調査すれば良ろしいでしょうか。
以下がエラーログになります。
発生している問題・エラーメッセージ
---pg_log(一部抜粋)--- WARNING: oldest xmin is far in the past HINT: Close open transactions soon to avoid wraparound problems. LOG: automatic vacuum of table "template1.pg_toast.pg_toast_xxxxx"
該当のソースコード
---postgresql.conf(一部抜粋)--- #track_counts = on #autovacuum = on log_autovacuum_min_duration = 0 #autovacuum_max_workers = 3 #autovacuum_naptime = 1min #autovacuum_vacuum_threshold = 50 #autovacuum_analyze_threshold = 50 #autovacuum_vacuum_scale_factor = 0.2 #autovacuum_analyze_scale_factor = 0.1 #autovacuum_freeze_max_age = 200000000 #autovacuum_multixact_freeze_max_age = 400000000 #autovacuum_vacuum_cost_delay = 20ms #autovacuum_vacuum_cost_limit = -1 ⇒ログ設定以外は一通りコメントアウトしている為、デフォルトの設定でAutoVacuumがかかっていると思われる。
試したこと
1.本事象が発生しているDBと同DBをローカル環境に構築し、同じテーブル及びデータを作成。その後DELETEを実行。
→ローカル環境ではAutoVacuumされたが、本事象が発生しているDBではAutoVacuumされない。
補足情報(FW/ツールのバージョンなど)
本事象DB
CentOS7
PostgreSQL 9.4.24 64-bit
ローカル環境
Windows10
PostgreSQL 9.4.26 64-bit
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/11 01:33