[pgpool-general-jp: 381] Re: pgpool-II 2.0.1 : difference of the number of update tuples

Yoshiyuki Asaba y-asaba @ sraoss.co.jp
2008年 2月 18日 (月) 11:25:50 JST


浅羽です。

From: Jun Kuriyama <kuriyama+ml @ s2factory.co.jp>
Subject: [pgpool-general-jp: 380] Re: pgpool-II 2.0.1 : difference of the number of update tuples
Date: Mon, 18 Feb 2008 11:19:50 +0900

>  ちょっと CON_DOWN になる要因がわからないので、今はそれを追っていま
> す。……と書いてるそばから再現しました。
> 
> 2008-02-18 10:57:55 ERROR: pid 41582: connect_inet_domain_socket: connect() failed: Operation not permitted
> 2008-02-18 10:57:55 ERROR: pid 41582: connection to db1(5432) failed
> 2008-02-18 10:57:55 ERROR: pid 41582: new_connection: create_cp() failed
> 2008-02-18 10:57:55 LOG:   pid 41582: notice_backend_error: 0 fail over request from pid 41582
> 2008-02-18 10:57:55 LOG:   pid 41567: starting degeneration. shutdown host db1(5432)
> 2008-02-18 10:57:55 LOG:   pid 41567: failover_handler: set new master node: 1
> 2008-02-18 10:57:55 LOG:   pid 41567: failover done. shutdown host db1(5432)
> 
>  Operation not permitted ってことは EPERM のように見えますが、あれ?
> 手元の FreeBSD の man connect(2) には EPERM が含まれていないぞ……。

確かに、connect(2) が EPERM で失敗しているようです。FreeBSD でも同様で
あるかはわかりませんが、Linux の man には以下のように書いてあります。

EACCES, EPERM
   ソケットのブロードキャスト・フラグが有効になっていないのにユーザ
   がブロードキャストへ接続を試みた。または、ローカルのファイア
   ウォールの規則により接続の要求が失敗した。

ファイアウォールの設定はされていますでしょうか?


>  あと、現状ログファイルを見るには -n を使って起動するしかないような気
> がしますが、ログを syslog に出すようなオプションを付けるのはどうでしょ
> うか? エラーログをリダイレクトしてると、ローテートとか気にしないとい
> けないので、newsyslog に任せられると楽かなあ、と。

logger というコマンドを使うと syslog へ送ることが可能です。

  % echo aaa | logger

pgpool の場合は、

  % pgpool -n 2>&1 | logger

とすることで可能となります。

--
Yoshiyuki Asaba
y-asaba @ sraoss.co.jp


pgpool-general-jp メーリングリストの案内