Thread: hard shutdown of system
pid2=`ps -eaf | grep postmaster | grep -v grep | tail -1 | awk '{print $2}'`
On 4/17/06, surabhi.ahuja <surabhi.ahuja@iiitb.ac.in> wrote: > > the user tries to do kill -9 -1 and log in again > > in the startup script i do the following > > /sbin/pidof -s postmaster > > and it still displays some value, > > however ps -aef | grep postmaster does not display anything > > is it ok if i do the following > pid1=`/sbin/pidof -s postmaster` > pid2=`ps -eaf | grep postmaster | grep -v grep | tail -1 | awk '{print > $2}'` > > if ($pid1 and $pid2) > => postmaster is already running > > otherwise > > i check if postmaster.pid exists > if it does, i delete it > and then start postmaster by doing $PGCTL -l $POSTGRES_LOG -D $PGDATA -p > $POSTMASTER -o '-p ${PGPORT}' start > /dev/null 2>&1 Check out the startup script. Depending on what system you are running, this might already all be taken care of. Here's a mandrake example (I think the redhat version is pretty similar). http://techdocs.postgresql.org/scripts/mandrake72-startup -- Postgresql & php tutorials http://www.designmagick.com/
From: chris smith [mailto:dmagick@gmail.com]
Sent: Mon 4/17/2006 1:14 PM
To: surabhi.ahuja
Cc: pgsql-general@postgresql.org
Subject: Re: [GENERAL] hard shutdown of system
***********************
Your mail has been scanned by InterScan VirusWall.
***********-***********
On 4/17/06, surabhi.ahuja <surabhi.ahuja@iiitb.ac.in> wrote:
>
> the user tries to do kill -9 -1 and log in again
>
> in the startup script i do the following
>
> /sbin/pidof -s postmaster
>
> and it still displays some value,
>
> however ps -aef | grep postmaster does not display anything
>
> is it ok if i do the following
> pid1=`/sbin/pidof -s postmaster`
> pid2=`ps -eaf | grep postmaster | grep -v grep | tail -1 | awk '{print
> $2}'`
>
> if ($pid1 and $pid2)
> => postmaster is already running
>
> otherwise
>
> i check if postmaster.pid exists
> if it does, i delete it
> and then start postmaster by doing $PGCTL -l $POSTGRES_LOG -D $PGDATA -p
> $POSTMASTER -o '-p ${PGPORT}' start > /dev/null 2>&1
Check out the startup script. Depending on what system you are
running, this might already all be taken care of.
Here's a mandrake example (I think the redhat version is pretty similar).
http://techdocs.postgresql.org/scripts/mandrake72-startup
--
Postgresql & php tutorials
http://www.designmagick.com/
"surabhi.ahuja" <surabhi.ahuja@iiitb.ac.in> writes: > the user tries to do kill -9 -1 and log in again The *first* thing you gotta do is retrain your user. kill -9 is never the appropriate way to shut down the postmaster. The script mods you describe seem to be oriented at forcing the postmaster to restart when there are still live child processes of the old postmaster. That is a REALLY BAD IDEA. It will lead to unrecoverable corruption of your database. The safety checks that are in the postmaster are there to keep you from destroying your database --- overriding them by removing the pid file is not safe, recommended, or supported. The last question is why your user wants to shut down the postmaster so often? There shouldn't be any need for that in ordinary scenarios. regards, tom lane