> 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