Hi Tim

I did it as you said me and I got the following results when the database
coming down:

[postgres@postgres pgsql]$ ps aux | grep postmaster
postgres  6616  0.0  0.0     0     0  p4 Z    20:05   0:00 (postmaster
<zombie>)
postgres  6650  0.0  0.0     0     0  p4 Z    20:11   0:00 (postmaster
<zombie>)
postgres  6654  0.1  0.0     0     0  p4 Z    20:12   0:00 (postmaster
<zombie>)
postgres  6655  0.0  0.0     0     0  p4 Z    20:12   0:00 (postmaster
<zombie>)
postgres  6659  0.0  0.0     0     0  p4 Z    20:13   0:00 (postmaster
<zombie>)
postgres  6662  0.0  0.0     0     0  p4 Z    20:14   0:00 (postmaster
<zombie>)
postgres  6663  0.0  0.0     0     0  p4 Z    20:14   0:00 (postmaster
<zombie>)
postgres  6664  0.1  0.0     0     0  p4 Z    20:14   0:00 (postmaster
<zombie>)
postgres  6666  0.0  0.0     0     0  p4 Z    20:15   0:00 (postmaster
<zombie>)
postgres  6667  0.0  0.0     0     0  p4 Z    20:15   0:00 (postmaster
<zombie>)
postgres  6668  0.0  0.0     0     0  p4 Z    20:15   0:00 (postmaster
<zombie>)
postgres  6669  0.1  0.0     0     0  p4 Z    20:16   0:00 (postmaster
<zombie>)
postgres  6670  0.0  0.0     0     0  p4 Z    20:16   0:00 (postmaster
<zombie>)
postgres  6671  0.0  0.0     0     0  p4 Z    20:16   0:00 (postmaster
<zombie>)
postgres  6672  0.2  0.0     0     0  p4 Z    20:16   0:00 (postmaster
<zombie>)
postgres  6673  0.2  0.0     0     0  p4 Z    20:16   0:00 (postmaster
<zombie>)
postgres  6674  0.0  0.0     0     0  p4 Z    20:17   0:00 (postmaster
<zombie>)
postgres  6675  0.2  0.0     0     0  p4 Z    20:17   0:00 (postmaster
<zombie>)
postgres  6676  0.5  0.0     0     0  p4 Z    20:17   0:01 (postmaster
<zombie>)
postgres  6677  0.0  0.0     0     0  p4 Z    20:18   0:00 (postmaster
<zombie>)
postgres  6678  0.0  0.0     0     0  p4 Z    20:18   0:00 (postmaster
<zombie>)
postgres  6679  0.2  0.0     0     0  p4 Z    20:18   0:00 (postmaster
<zombie>)
postgres  6680  0.0  0.0     0     0  p4 Z    20:18   0:00 (postmaster
<zombie>)
postgres  6681  0.0  0.0     0     0  p4 Z    20:18   0:00 (postmaster
<zombie>)
postgres  6685  0.0  0.0     0     0  p4 Z    20:18   0:00 (postmaster
<zombie>)
postgres  6686  0.6  0.0     0     0  p4 Z    20:18   0:01 (postmaster
<zombie>)
postgres  6687  0.0  0.0     0     0  p4 Z    20:19   0:00 (postmaster
<zombie>)
postgres  6688  0.0  0.0     0     0  p4 Z    20:19   0:00 (postmaster
<zombie>)
postgres  6689  0.6  0.0     0     0  p4 Z    20:19   0:00 (postmaster
<zombie>)
postgres  6690  0.0  0.0     0     0  p4 Z    20:19   0:00 (postmaster
<zombie>)
postgres  6691  0.0  0.0     0     0  p4 Z    20:19   0:00 (postmaster
<zombie>)
postgres  6692  0.9  0.0     0     0  p4 Z    20:19   0:01 (postmaster
<zombie>)
postgres  6693  0.0  0.0     0     0  p4 Z    20:20   0:00 (postmaster
<zombie>)
postgres  6694  0.1  0.0     0     0  p4 Z    20:20   0:00 (postmaster
<zombie>)
postgres  6701  0.0  0.1   840   352  p4 S    20:21   0:00 grep postmaster

[postgres@postgres data]$ more pg.stderr
ERROR:  postmaster: StreamConnection: accept: Invalid argument

I think that to understand this error could be very valuable in order to find
a solution.

The pg.stdout was empty all time.

I hope you can help me.

Pd/ the version of my postgres is  6.4.2

Thanks a lot.

Tim Holloway wrote:

> Something's funny here. Unless you built a backend with
> an override on the default max backend count,
> you should be able to create no more than 32 backend
> processes. Which is possible also if you installed an RPM
> version and it's built for more than 32. Otherwise you should see
> the message "Sorry, too many clients already" when making the
> excess connections.
>
> Could you provide the PostgresSQL version number? Also it
> would  help if you captured stdout and stderr and forwarded
> them. Assuming you're using the Red Hat Control Panel to start
> and stop the server, look at the postgres script in /etc/rc.d/init.d
>
> You should see something like:
>
> su postgres -c "postmaster -i -D /var/lib/pgsql"
>
> Save the old version and change to
>
> su postgres -c "postmaster -i -D /var/lib/pgsql >/var/lib/pgsql/pg.stdout
>  >&/var lib/pgsql/pg.stderr"
>
> Then start up the system, shut it down. Revert to the old
> startup script and send the pg.stdout and pg.stderr files.
>
>    regards,
>
>        Tim Holloway
>
> Lucio Andres Perez wrote:
> >
> > Hi everyone,
> >
> > Maybe this could be a newbie trouble for somebody, but Iīve tried all I
> > can and I havenīt found the source of  my problem...
> >
> > I have a PII-400Mhz 192Mb RedHat 5.2 ( I know, itīs a little old )
> > running only postgresql 6.4, the apache/php servers are running in other
> > host.
> >
> > the problem is this:  I start the postmaster whith the command
> > "postmaster -i -B 256 - S" and it begins to create child process so
> > that, when there are more than 30 process, the system is coming down,
> > with  'segmentation fault' error messages,  of course, Iīve to wait for
> > a while, then I do a  'ps aux' to see what is going on, and I see all
> > the process in ZOMBIE status !! and the memory is almost full,  So Iīve
> > to kill all these processes and restart the postmaster...
> >
> > How do I tune the postmaster so that it canīt use all the systemīs
> > memory or at least, it can stand for more load. (in this case, load
> > means a lot of simultaneous conexions)
> >
> > Please, I thank anything you can say me ...
> >
> > --
> > Eng. Lucio Andres Perez
> > NewMedia Director
> > Telesat S.A.
> > Cali-Colombia-SouthAmerica
> > http://www.telesat.com.co
> >
> > ************

--
Eng. Lucio Andres Perez
NewMedia Director
Telesat S.A.
http://www.telesat.com.co



************

Reply via email to