Re: Online index builds

From: Jeff Davis <pgsql(at)j-davis(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Ragnar <gnari(at)hive(dot)is>, pgsql-general(at)postgresql(dot)org
Subject: Re: Online index builds
Date: 2006-12-07 23:34:16
Message-ID: 1165534456.2048.235.camel@dogma.v10.wvs
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-announce pgsql-general pgsql-www

On Thu, 2006-12-07 at 18:11 -0500, Tom Lane wrote:
> Jeff Davis <pgsql(at)j-davis(dot)com> writes:
> > I think all you need to do what you want is something like:
> > ALTER TABLE foo DROP CONSTRAINT foo_pkey KEEP INDEX;
>
> > Because then you could drop the primary key status on a column without
> > affecting the column or the index, then use my suggested syntax to
> > switch the primary key status to a different index like so:
> > ALTER TABLE foo SET PRIMARY KEY INDEX foo_othercolumn_index;
>
> That seems like an awful lot of uglification simply to let the index be
> marked as "primary key" rather than just "unique".
>

Agreed. It's just a thought.

The reason it came to my mind is because some applications, like Slony,
use the primary key by default.

After reading through the archives, it looks like Gregory Stark
suggested a REINDEX CONCURRENTLY, which would certainly solve the
awkwardness of maintenance on a primary key. I didn't see much
objection, maybe it's worth consideration for 8.3?

Regards,
Jeff Davis

In response to

Responses

Browse pgsql-announce by date

  From Date Subject
Next Message Tom Lane 2006-12-07 23:51:40 Re: Online index builds
Previous Message Tom Lane 2006-12-07 23:11:02 Re: Online index builds

Browse pgsql-general by date

  From Date Subject
Next Message greg 2006-12-07 23:44:35 porting time calcs to PG
Previous Message Tom Lane 2006-12-07 23:19:14 Re: SET statement_timeout

Browse pgsql-www by date

  From Date Subject
Next Message Tom Lane 2006-12-07 23:51:40 Re: Online index builds
Previous Message Tom Lane 2006-12-07 23:11:02 Re: Online index builds