On 2012-12-07 13:54:44 -0500, Tom Lane wrote: > Andres Freund <and...@2ndquadrant.com> writes: > > !indislive indexes are created during DROP INDEX CONCURRENTLY. Thats a > > different case than CREATE INDEX CONCURRENTLY. Accessing their > > definition is actually problematic because i can vanish while youre > > examing it which could cause errors both in the backend and in pg_dump. > > That's true of any index, not just !indislive ones. If you're doing DDL > during a pg_dump, and that makes it fail, you get to keep both pieces.
Uhm. pg_dump is going to lock the tables at start, so I don't really see anything dangerous happening otherwise? Once it has done so newly started concurrent CREATE/DROPs won't finish and normal ones can't even start. What I am thinking about is parts of the dead indexes pg_attribute entries vanishing while pg_get_indexdef() is running. That would probably result in some scary error messages. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers