pgsql: Fix things so that when CREATE INDEX CONCURRENTLY sets

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix things so that when CREATE INDEX CONCURRENTLY sets
Date: 2007-05-02 21:08:46
Message-ID: 20070502210846.4FB429FB527@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Fix things so that when CREATE INDEX CONCURRENTLY sets pg_index.indisvalid
true at the very end of its processing, the update is broadcast via a
shared-cache-inval message for the index; without this, existing backends that
already have relcache entries for the index might never see it become valid.
Also, force a relcache inval on the index's parent table at the same time,
so that any cached plans for that table are re-planned; this ensures that
the newly valid index will be used if appropriate. Aside from making
C.I.C. behave more reasonably, this is necessary infrastructure for some
aspects of the HOT patch. Pavan Deolasee, with a little further stuff from
me.

Modified Files:
--------------
pgsql/src/backend/commands:
indexcmds.c (r1.157 -> r1.158)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/indexcmds.c.diff?r1=1.157&r2=1.158)
pgsql/src/backend/utils/cache:
inval.c (r1.79 -> r1.80)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/inval.c.diff?r1=1.79&r2=1.80)
relcache.c (r1.259 -> r1.260)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/relcache.c.diff?r1=1.259&r2=1.260)

Browse pgsql-committers by date

  From Date Subject
Next Message User Hinoue 2007-05-02 21:44:13 psqlodbc - psqlodbc: The version is now 8.2.0401.
Previous Message User Dpage 2007-05-02 20:00:13 stackbuilder - wizard: Translation update from Nicolai