[pgsql-jp: 26394] Re: Ctrl-C でバックグラウンドの postmaster に SIGINT

Hiroki Takada takada @ rh.xdsl.ne.jp
2002年 6月 17日 (月) 18:09:15 JST


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

高田と申します.

こんにちは.

> と出力されていて、kill コマンドを使ってないのに SIGINT が飛ぶ
> っていうのは ^C くらいしかないのだが… と思って
> 
> # ./_S98postgres start
>  ...(起動メッセージ)
> # ps -ef | grep postmaster
>  (起動されている。)
> # ^C
> 
> とやると SIGINT で Fast Shutdown されてしまいました。

src/postgresql-7.1.3/src/backend/postmaster/postmaster.c

のシグナルハンドラのセットアップ部分をご覧いただくとおわかり
かと思いますが,SIGINT受信時の動作はDBのシャットダウンのよう
です.しかし,これはSIGINTに対するごく一般的な処理方法であり,
特に問題ないですよね.

> 最初に postmaster がいなくなっているのに気づいた時もそのちょっと
> 前に ^C を打っていました。
> _S98postgres はログファイルや PID ファイルを確認して
> /usr/bin/su postgres -c "$PROG -D $PGDATA -w start -l $LOGFILE"
> で起動するようになっています。$PROG は pg_ctl .
> で、いろいろ _S98postgres や pg_ctl をいじってもみたのですが、
> silent_mode = true で回避することができました。
> silent_mode は名前からしてただログをはかないだけかと思っていたの
> ですが制御端末を切り離すオプションだったのですね。
> ただ syslog だけだと Fast Shutdown か Smart Shutdown か判らないん
> ですよね。
>

GNU bash 2.04 (under linux 2.4.18/glibc 2.2.4)では再現しないよう
です.

manによると,postmasterのバックグラウンドの起動は,nohupで起動し
てttyを切り離すよう指定されているようですね.

では

- -- 
 ----------------------------------------------------
    Hiroki Takada <takada @ rh.xdsl.ne.jp>

    My public key is available at the public key
    servers. The message was signed as iso-2022-jp
    char-set document in no PGP/MINE (RFC 2015)
    format.
 ----------------------------------------------------


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: KUHASIKU WA http://www.gnupg.org/ WO GORANKUDASAI

iD8DBQE9Dac6yTl8Jc+E3sERAlD/AJ9AbdKuHqzMD2K2IAGG1MKB7J+PJwCgsaQb
9EfnqFOOH3aV4RWcwz0mgDM=
=CEzn
-----END PGP SIGNATURE-----



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