From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Christophe <xof(at)thebuild(dot)com> |
Cc: | Pg - General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: do postgresql this job for me ? (firebird user) |
Date: | 2009-05-24 18:21:40 |
Message-ID: | 26781.1243189300@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Christophe <xof(at)thebuild(dot)com> writes:
> On May 24, 2009, at 8:58 AM, Craig Ringer wrote:
>> There isn't currently any REINDEX CONCURRENTLY
>> option, but people seem to have a few workarounds that do the job if you
>> really do need to rebuild an index on a live, active table.
> It's pretty straight-forward to do:
> CREATE INDEX CONCURRENTLY idx_new ON table ... ;
> DROP INDEX idx;
> ALTER INDEX idx_new RENAME TO idx;
However, this doesn't work for an index that's underlying a UNIQUE or
PRIMARY KEY constraint, nor an index that's depended on by a FOREIGN KEY
reference --- the system won't let you drop such indexes. Plus there
are obvious opportunities for human error. So we oughta do REINDEX
CONCURRENTLY someday ...
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2009-05-24 18:44:52 | Re: question about SSIS |
Previous Message | Christophe | 2009-05-24 17:53:19 | Re: do postgresql this job for me ? (firebird user) |