On Tue, Nov 27, 2012 at 12:02 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: > The point of not wanting to open the index NoLock (and for that matter > of having DROP INDEX CONCURRENTLY take AccessExclusiveLock once it > thinks nobody is touching the index) is to make sure that if somehow > somebody is touching the index anyway, they don't see the index's > catalog entries as corrupt. They'll either all be there or all not. > It's only a belt-and-suspenders safety measure, but I don't want to > give it up.
+1. There's a whole crapload of commits that I did for 9.2 with commit messages like "improve concurrent DDL in case XYZ". A lot of that had to do with fixing cases where we were examining system catalogs in unsafe ways before locks had been taken. I didn't manage to fix them all, unfortunately, but it's significantly better than it used to be, and I'd really like it if we could try not to go backwards. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers