Re: pg_ctl restart - behaviour based on wrong instance
От | Magnus Hagander |
---|---|
Тема | Re: pg_ctl restart - behaviour based on wrong instance |
Дата | |
Msg-id | CABUevEwunHnVPon3G0UH4o+52wJXrnMezeBgxACJbKWwF7WgFQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: pg_ctl restart - behaviour based on wrong instance (Bruce Momjian <bruce@momjian.us>) |
Ответы |
Re: pg_ctl restart - behaviour based on wrong
instance
|
Список | pgsql-hackers |
On Tue, Oct 11, 2011 at 23:35, Bruce Momjian <bruce@momjian.us> wrote: > Robert Haas wrote: >> On Wed, Mar 23, 2011 at 1:48 AM, Fujii Masao <masao.fujii@gmail.com> wrote: >> > On Sat, Mar 19, 2011 at 10:20 AM, Robert Haas <robertmhaas@gmail.com> wrote: >> >> On Fri, Mar 18, 2011 at 1:19 PM, Erik Rijkers <er@xs4all.nl> wrote: >> >>> This is OK and expected. ?But then it continues (in the logfile) with: >> >>> >> >>> FATAL: ?lock file "postmaster.pid" already exists >> >>> HINT: ?Is another postmaster (PID 20519) running in data directory >> >>> "/var/data1/pg_stuff/pg_installations/pgsql.vanilla_1/data"? >> >>> >> >>> So, complaints about the *other* instance. ?It doesn't happen once a successful start (with pg_ctl >> >>> start) has happened. >> >> >> >> I'm guessing that leftover postmaster.pid contents might be >> >> responsible for this? >> > >> > The cause is that "pg_ctl restart" uses the postmaster.opts which was >> > created in the primary. Since its content was something like >> > "pg_ctl -D vanilla_1/data", vanilla_1/data/postmaster.pid was checked >> > wrongly. >> > >> > The simple workaround is to exclude postmaster.opts from the backup >> > as well as postmaster.pid. But when postmaster.opts doesn't exist, >> > "pg_ctl restart" cannot start up the server. We might also need to change >> > the code of "pg_ctl restart" so that it does just "pg_ctl start" when >> > postmaster.opts doesn't exist. >> >> Sounds reasonable. > > I looked over this issue and I don't thinking having pg_ctl restart fall > back to 'start' is a good solution. I am concerned about cases where we > start a different server without shutting down the old server, for some > reason. When they say 'restart', I think we have to assume they want a > restart. > > What I did do was to document that not backing up postmaster.pid and > postmaster.opts might help prevent pg_ctl from getting confused. Should we exclude postmaster.opts from streaming base backups? We already exclude postmaster.pid... -- Magnus Hagander Me: http://www.hagander.net/ Work: http://www.redpill-linpro.com/
В списке pgsql-hackers по дате отправления: