How to cripple a postgres server

From: Stephen Robert Norris <srn(at)commsecure(dot)com(dot)au>
To: pgsql-general(at)postgresql(dot)org
Subject: How to cripple a postgres server
Date: 2002-05-28 01:43:28
Message-ID: 1022550208.3344.8.camel@ws12
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I've observed the following, and I wonder if anyone has seen it or has a
workaround, before I report it as a bug.

Doing the following will result in the load on the server reaching ~600,
and the server becoming very unresponsive. This seems to be as a result
of the SIGUSR2 which is delivered for async notify to free space in the
event queue thingy (I'm sort of in the dark here).

1) Open many (I used 800) database connections and leave them idle.
2) run: while true; do vacuum {database} ; done

Wait. Observe db has stopped doing useful work.

This causes glitches of up to many minutes, during which the db fails to
respond in any way.

We noticed this on a production system, so it's fairly dire. I know one
workaround is to reduce the number of idle connections, but that will
make our system less responsive.

It looks like a bug to me - anyone got any ideas?

Stephen

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2002-05-28 01:57:22 Re: How to cripple a postgres server
Previous Message Neil Conway 2002-05-28 01:17:31 Re: [HACKERS] Re : Solaris Performance - 64 bit puzzle