Re: Multiple index builds on same table - in one sweep?

From: Greg Smith <greg(at)2ndquadrant(dot)com>
To: Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: Multiple index builds on same table - in one sweep?
Date: 2011-04-11 07:41:24
Message-ID: 4DA2B0A4.6050605@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Scott Marlowe wrote:
> FYI, in 8.3.13 I get this for all but one index:
>
> ERROR: deadlock detected
> DETAIL: Process 24488 waits for ShareLock on virtual transaction
> 64/825033; blocked by process 27505.
> Process 27505 waits for ShareUpdateExclusiveLock on relation 297369165
> of database 278059474; blocked by process 24488.
>

Is that trying to build them by hand? The upthread request here is
actually already on the TODO list at
http://wiki.postgresql.org/wiki/Todo and it talks a bit about what works
and what doesn't right now:

Allow multiple indexes to be created concurrently, ideally via a single
heap scan
-pg_restore allows parallel index builds, but it is done via
subprocesses, and there is no SQL interface for this.

This whole idea was all the rage on these lists circa early 2008, but
parallel restore seems to have satisfied enough of the demand in this
general area that it doesn't come up quite as much now.

--
Greg Smith 2ndQuadrant US greg(at)2ndQuadrant(dot)com Baltimore, MD
PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.us
"PostgreSQL 9.0 High Performance": http://www.2ndQuadrant.com/books

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Scott Marlowe 2011-04-11 07:57:35 Re: Multiple index builds on same table - in one sweep?
Previous Message Scott Marlowe 2011-04-11 07:31:34 Re: Multiple index builds on same table - in one sweep?