Enterprise Postgresの「ERROR: canceling autovacuum task」エラーについて
Enterprise Postgresのよくあるご質問を検索できます。
Enterprise Postgres の技術情報はこちら
- Enterprise Postgresで、「ERROR: canceling autovacuum task」というエラーになりました。原因と対処方法を教えてください。
- [原因]
自動バキュームの実行が、他のSQL文の実行と競合したためにキャンセルされたことが原因です。
競合したテーブルは、「ERROR: canceling autovacuum task」エラーの次の行に出力されるCONTEXTエラー情報(※)で確認することができます。また、競合したSQL文は、pg_stat_activityビューで確認することができます。
※postgresql.confのlog_error_verbosityパラメータに、DEFAULT、またはVERBOSEを指定している場合にのみ、以下のように出力されます。
CONTEXT: automatic vacuum of table "テーブル名"
[対処方法]
自動バキュームは自動で再実行されるため、再実行が正常に完了するのであれば、対処は不要です。
ただし、再実行も、当該エラーで継続して失敗する場合は、該当テーブルをアクセスする長トランザクションが存在しており、自動バキュームが動作できない状態が続いています。アプリケーションを見直し、長トランザクションを解消してください。
log_error_verbosityパラメータの詳細は以下のマニュアルを参照してください。
FUJITSU Software Enterprise Postgres 13 SP1
PostgreSQL 13.3 Documentation
Part III. Server Administration
Chapter 19. Server Configuration
19.8. Error Reporting and Logging
19.8.3. What to Log
自動バキュームの詳細は以下のマニュアルを参照してください。
FUJITSU Software Enterprise Postgres 13 SP1
PostgreSQL 13.3 Documentation
Part III. Server Administration
Chapter 24. Routine Database Maintenance Tasks
24.1. Routine Vacuuming
pg_stat_activityビューの詳細は以下のマニュアルを参照してください。
FUJITSU Software Enterprise Postgres 13 SP1
PostgreSQL 13.3 Documentation
Part III. Server Administration
Chapter 27. Monitoring Database Activity
27.2. The Statistics Collector
なお、上記以外の製品バージョン/レベルについては、該当するマニュアル箇所を参照してください。
製品・サービス情報 |
|
||||
---|---|---|---|---|---|
アンサー種別 | 運用/保守 |