Server hangs on multiple connections - Mailing list pgsql-bugs
From | David Christian |
---|---|
Subject | Server hangs on multiple connections |
Date | |
Msg-id | 8CA6796F-CC0D-11D6-9296-0003933E390A@comtechmobile.com Whole thread Raw |
Responses |
Re: Server hangs on multiple connections
|
List | pgsql-bugs |
Hi, I posted this through the web page but it didn't come over the list, so I am sending it directly. Hope that's okay. I am able to get PostgreSQL 7.2.2 built and installed, and postmaster starts up fine, but when hit with multiple simultaneous connections (2 or more), the server freezes up and can only be stopped with immediate mode. The existing postgres processes appear hung (see ps output below) and running psql to connect also just hangs. The problem I'm describing is only happening when I install on the following platform: Yellow Dog Linux 2.3 on PowerPC (PowerMac G4 QuickSilver, dual processor) with 1.5GB RAM. $ cat /proc/cpuinfo processor : 0 cpu : 7450, altivec supported clock : 799MHz revision : 2.1 (pvr 8000 0201) bogomips : 797.90 processor : 1 cpu : 7450, altivec supported clock : 799MHz revision : 2.1 (pvr 8000 0201) bogomips : 797.90 total bogomips : 1595.80 machine : PowerMac3,5 motherboard : PowerMac3,5 MacRISC2 MacRISC Power Macintosh detected as : 69 (PowerMac G4 Silver) pmac flags : 00000000 L2 cache : 256K unified memory : 1536MB pmac-generation : NewWorld $ uname -a Linux chef.rdss.com 2.4.19-4asmp #1 SMP Wed Jun 5 00:59:38 EDT 2002 ppc unknown I have run PostgreSQL since 7.1 successfully on Red Hat Linux i386 and Mac OS X 10.2 ppc (the very box I am currently having problems with) without the lockup problem. I am currently running PostgreSQL 7.2.2 on a Red Hat i386 machine, installed from source, and it's working fine. This problem can be replicated by building PostgreSQL from source and running the 'make check' sequence. It also happens when I 'make install' and then initiate more than one simultaneous connection to the PostgreSQL server. The PostgreSQL server log does not show anything unusual, until I kill the postmaster and then it reports on all the backend connections that were terminated. Here is the sequence of steps I use which results in this condition: $ tar xfz postgresql-7.2.2.tar.gz $ cd postgresql-7.2.2 $ ./configure $ make $ make check It hangs at this step. ps output shows: 5836 pts/0 S 0:00 make check 5919 pts/0 S 0:00 make -C src/test check 5920 pts/0 S 0:00 make -C regress check 5968 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7827 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/po 7830 pts/0 S 0:00 postgres: stats buffer process 7832 pts/0 S 0:00 postgres: stats collector process 7891 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7892 pts/0 S 0:00 tee ./regression.out 7897 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7898 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7899 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7900 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7901 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7902 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7903 pts/0 S 0:00 postgres: davidc regression [local] DROP 7904 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7905 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7906 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7907 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7908 pts/0 S 0:00 postgres: davidc regression [local] SELECT 7909 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7910 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7911 pts/0 S 0:00 postgres: davidc regression [local] SELECT 7912 pts/0 S 0:00 postgres: davidc regression [local] SELECT 7913 pts/0 S 0:00 postgres: davidc regression [local] SELECT 7914 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7915 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7916 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7917 pts/0 S 0:00 postgres: davidc regression [local] SELECT 7918 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7919 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7920 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7921 pts/0 S 0:00 postgres: davidc regression [local] startup 7922 pts/0 S 0:00 postgres: davidc regression [local] startup 7923 pts/0 S 0:00 postgres: davidc regression [local] startup 7924 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7925 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7926 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7927 pts/0 S 0:00 /bin/sh ./pg_regress --temp-install --top-builddir=../../.. --schedule=./parallel_schedule --multibyte= 7928 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7929 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7930 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7931 pts/0 S 0:00 /home/davidc/src/PostgreSQL/postgresql-7.2.2/src/test/regress/./ tmp_check/install//usr/local/pgsql/bin/ps 7932 pts/0 S 0:00 postgres: davidc regression [local] startup 7933 pts/0 S 0:00 postgres: davidc regression [local] startup 7934 pts/0 S 0:00 postgres: davidc regression [local] startup 7935 pts/0 S 0:00 postgres: davidc regression [local] startup Some other possibly useful details: $ gcc --version 2.95.4 $ make --version GNU Make version 3.79.1, by Richard Stallman and Roland McGrath. Built for powerpc-yellowdog-linux-gnu $ autoconf --version Autoconf version 2.13 $ rpm -qa | grep glibc glibc-2.2.5-1.2.3a glibc-devel-2.2.5-1.2.3a glibc-common-2.2.5-1.2.3a I tried to include the output from the installation commands, but was told the message was too long to post to the list. Please let me know if it would help to send any of that separately. PostgreSQL is a fantastic product, and I thoroughly enjoy using it on other platforms; I would love to get it working on this one as well, and I am at a loss as to why it appears to be hanging here. Thank you in advance for your time in considering this submission. David
pgsql-bugs by date: