Re: [HACKERS] Re: [PORTS] pgmonitor and Solaris

Larry Rosenman <ler@lerctr.org>

From: Larry Rosenman <ler@lerctr.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Mathijs Brands <mathijs@ilse.nl>, Bruce Momjian <pgman@candle.pha.pa.us>, Larry Rosenman <ler@lerctr.org>, Peter Eisentraut <peter_e@gmx.net>, PostgreSQL-development <pgsql-hackers@postgresql.org>, PostgreSQL-ports <pgsql-ports@postgresql.org>, PostgreSQL-Admin <pgsql-admin@postgresql.org>
Date: 2001-03-28T23:36:30Z
Lists: pgsql-hackers
FYI, the WU-FTPD code (2.6.0 or better) has a couple of more platforms 
including UnixWare.  The UnixWare code will need /dev/kmem permission to 
change it's stuff, so I don't know whether we want to do this or not, but 
if people are looking at the ps stuff, please look at this as well.

Larry Rosenman
-- 
Larry Rosenman                             http://www.lerctr.org/~ler/
Phone: +1 972 414 9812                          E-Mail: ler@lerctr.org
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749 US
>>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 3/28/01, 5:23:16 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote regarding Re: 
[HACKERS] Re: [PORTS] pgmonitor and Solaris :


> > On Wed, Mar 28, 2001 at 05:33:05PM -0500, Bruce Momjian allegedly wrote:
> >> Sure 'ps -U' will work, but it was reported that on Solaris, plain ps
> >> can't show the postgres status display, while ucb/ps can.  I don't need
> >> specific columns.  What I need is the postgres status parameters, and if
> >> possible, a user restriction to ps for performance reasons.

> Looking at the sendmail code, it seems they use SPT_REUSEARGV (what we
> call PS_USE_CLOBBER_ARGV) technique on Solaris.  Possibly the problem is
> simply that line 65 in src/backend/utils/misc/ps_status.c fails to
> cover Solaris as one of the possible options:

> #elif defined(__linux__) || defined(_AIX4) || defined(_AIX3) || 
defined(__sgi) || (defined(sun) && !defined(BSD)) || defined(ultrix) || 
defined(__ksr__) || defined(__osf__) || defined(__QNX__) || 
defined(__svr4__) || defined(__svr5__)
> #define PS_USE_CLOBBER_ARGV

> Can someone check whether adding an appropriate Solaris symbol (which
> one?) fixes the problem?

> The coding technique embodied in lines 63-67 pretty much sucks anyway,
> since this platform-specific knowledge ought to be out in the port.h
> files rather than hidden in the guts of the system.  I don't want to
> touch it right now, but I think we ought to have things like

>       #define PS_STATUS_TECHNIQUE PS_USE_CLOBBER_ARGV

> in the port.h files, rather than these massive #ifdefs.

>                       regards, tom lane