pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Matthew Sackman <matthew@lshift.net>
To: pgsql-performance@postgresql.org
Subject: Re: Poor performance of delete by primary key
Date: Tue, 6 Sep 2005 16:43:15 +0100
Message-ID: <20050906154315.GL382@pongo.lshift.net> (raw)
In-Reply-To: <18162.1126020720@sss.pgh.pa.us>
References: <2F9239F5E316C54688FDA9814FF045D6EADACC@EXCHANGE.sf.nimblefish.com>
	<18162.1126020720@sss.pgh.pa.us>

On Tue, Sep 06, 2005 at 11:32:00AM -0400, Tom Lane wrote:
> "Brian Choate" <brianc@nimblefish.com> writes:
> > We are seeing a very strange behavior from postgres. For one of our very =
> > common tasks we have to delete records from a table of around 500,000 =
> > rows. The delete is by id which is the primary key. It seems to be =
> > consistently taking around 10 minutes to preform. This is totally out of =
> > line with the rest of the performance of the database.
> 
> I'll bet this table has foreign-key references from elsewhere, and the
> referencing columns are either not indexed, or not of the same datatype
> as the master column.

Wouldn't setting the FK as deferrable and initially deferred help here
too as then the FK wouldn't be checked until the transaction ended?

Matthew



view thread (8+ messages)  latest in thread

Message-ID: <20050906154315.GL382@pongo.lshift.net>
Permalink:  ../20050906154315.GL382@pongo.lshift.net/
Also on:    postgresql.org/message-id/20050906154315.GL382@pongo.lshift.net

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: matthew@lshift.net
  Subject: Re: Poor performance of delete by primary key
  In-Reply-To: <20050906154315.GL382@pongo.lshift.net>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox