Re: page locking? too many btree indexes... - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: page locking? too many btree indexes...
Date
Msg-id 20041027175900.GB5394@dcc.uchile.cl
Whole thread Raw
In response to page locking? too many btree indexes...  ("Brian Maguire" <bmaguire@vantage.com>)
List pgsql-general
On Tue, Oct 26, 2004 at 11:44:42AM -0400, Brian Maguire wrote:
> Can too many btree indexes cause page level locking?

Yes, too many btree indexes can, as can a single btree index.

> I am experiencing locking related on two tables.  Each has several
> indexes on it (4 or more).  One table is frequently updated (20%),
> occasional inserts(10%), and many reads (70%) and the other has many
> inserts and reads every 20 secs.

Most likely, your problem is not related to the indexes.  Yes, there is
page-level exclusive locking on the indexes when there's insert or
delete operations going on, but they don't cause deadlocks.  The likely
cause of your problem is foreign key relationships.  Those are
implemented using row-level exclusive locking, and they can (and often
do) cause deadlocks.

Do you have any foreign keys defined?

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Porque Kim no hacia nada, pero, eso sí,
con extraordinario éxito" ("Kim", Kipling)


pgsql-general by date:

Previous
From: nd02tsk@student.hig.se
Date:
Subject: Re: Reasoning behind process instead of thread based
Next
From: Michael Fuhr
Date:
Subject: Re: Array values and foreign keys