Sorry for the lateness of this...

On 11/14/13, 8:40 PM, Michael Paquier wrote:
+       /*
+        * Phase 4 of REINDEX CONCURRENTLY
+        *
+        * Now that the concurrent indexes have been validated could be used,
+        * we need to swap each concurrent index with its corresponding old 
index.
+        * Note that the concurrent index used for swaping is not marked as 
valid
+        * because we need to keep the former index and the concurrent index 
with
+        * a different valid status to avoid an implosion in the number of 
indexes
+        * a parent relation could have if this operation fails multiple times 
in
+        * a row due to a reason or another. Note that we already know thanks to
+        * validation step that
+        */
+

Was there supposed to be more to that comment?

In the loop right below it...

+       /* Swap the indexes and mark the indexes that have the old data as 
invalid */
+       forboth(lc, indexIds, lc2, concurrentIndexIds)
...
+               CacheInvalidateRelcacheByRelid(relOid);

Do we actually need to invalidate the cache on each case? Is it because we're 
grabbing a new transaction each time through?
--
Jim C. Nasby, Data Architect                       j...@nasby.net
512.569.9461 (cell)                         http://jim.nasby.net


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to