[pgsql-jp: 41755] Re: FATAL: canceling authentication due to timeout
Tomoaki Sato
sato @ sraoss.co.jp
2014年 12月 19日 (金) 09:18:32 JST
佐藤です。
> はじめまして柳林と申します。よろしくお願いいたします。
>
> postgresql-9.1.5をapache-2.2.23とphp-5.3.16のウェブサーバから利用して
> います。
>
> かなり頻度は低いのですが、以下のメッセージが記録されます。
>
> [2-1] FATAL: canceling authentication due to timeout
>
> 発生時刻のapacheのエラーログとアクセスログを確認しても起因となるアク
> セスが特定できず、原因不明の状態です。
> メッセージを素直に読むと「postgresqlへの認証処理がタイムアウトした」
> となりますが、原因を特定するためのアドバイスをいただけると幸いです。
単に負荷が高くて処理に時間がかかったか、VACUUM FULL などの強いロックを
取る処理の実行中で、認証に必要なシステムカタログのロック待ちで時間がか
かったか、といったことが考えられます。
log_lock_waits = on にしておくと、ロック待ちで deadlock_timeout に指定
された時間 (デフォルトでは 1s) を越えた場合にはテーブルを特定できます。
2014-12-19 09:03:46.306 JST [unknown][2254] LOG: process 2254 still waiting for AccessShareLock on relation 1260 of database 0 after 1001.515 ms
2014-12-19 09:04:45.304 JST [unknown][2254] FATAL: canceling authentication due to timeout
=# select '1260'::regclass;
regclass
-----------
pg_authid
----
Tomoaki Sato <sato @ sraoss.co.jp>
SRA OSS, Inc. Japan
pgsql-jp メーリングリストの案内