Oh I see now. I am so sorry to take up so much of your time. I've just realized that I have to use a modified version of postgres for the SMF setup to work. (This is actually there in the Sun document.) At the time I installed Postgres on that Solaris machine I followed descriptions which were based on the source code downloadable from postgresql.org and mirrors. I has not been aware that there has been a fork.
The issue is solved. Please, accept my apologies. Peter On 2/15/07, Stephen Hahn <sch at eng.sun.com> wrote: > * Peter Kovacs <peter.kovacs.1.0rc at gmail.com> [2007-02-14 14:34]: > > The post I quoted also says: > > > > "That should not happen; it should always be possible to detect whether > > the file is stale, *if* your start script is written correctly." > > > > "That" in the quote refers to my description: > > "On system startup PostgreSQL 8.1.4 refuses to start due to the pid > > file is [being] left over from [a] previous "session" on Solaris 10 > > x86." > > > > Nothing did "actually break", but something happened which should not > > have happened if my "start script is [had been] written correctly". > > > > The issue here is: > > Does the SMF setup described in the referenced Sun document make sure > > that the postmaster process will start and become functional without > > human intervention even if there is a pid file left over from a > > previously crashed (abruptly terminated) postmaster process? > > The start method doesn't appear to clear out stale pidfiles. On a quick > glance, it looks like, unless the pid file isn't readable, > > > http://src.opensolaris.org/source/xref/sfw/usr/src/cmd/postgres/postgresql-8.1.6/src/bin/pg_ctl/pg_ctl.c#get_pgpid > > that pg_ctl will attempt to start postgres even if a stale pidfile > exists > > > http://src.opensolaris.org/source/xref/sfw/usr/src/cmd/postgres/postgresql-8.1.6/src/bin/pg_ctl/pg_ctl.c#do_start > > (Presumably, two postgres invocations with the same configuration will > collide over some other system resource, like a network port.) > > In general, services don't need pidfiles under smf(5), but if you want > to have cleaner logs, filing an RFE for the postgres start method > would be fine. (There is also a databases community: > > http://www.opensolaris.org/os/community/databases/ > > There are some Postgres contributors there, so that might even be > faster--they own the service methods accompanying the integrated > Postgres in SFW.) > > - Stephen > >