Tom Lane wrote: > 2. In VAC FULL and CLUSTER, tell index rebuild not to wait around for > INSERT_IN_PROGRESS or DELETE_IN_PROGRESS tuples. I believe that the > price of this would be not re-verifying the integrity of unique indexes. > Which is kind of annoying, but then again rechecking data consistency > is not the purpose of these commands. It would not be too unreasonable > to tell people to use REINDEX if they suspect the validity of an index > --- that takes a significantly weaker lock and wouldn't be nearly as > big a problem to use on system catalogs. > > 3. Try to ameliorate the problem by making sure it's the VACUUM FULL > that fails, and not the other process, when there's a deadlock. > > BTW, the reason we don't see this type of problem with the existing > VAC FULL INPLACE logic is that it essentially silently adopts #2 > --- it suppresses uniqueness checks even when it's making new index > insertions. > > At the moment #2 is seeming like the most attractive alternative; > both of the others look like research projects. Comments?
Yea, #2. No one has complained about this behavior in the past, as I remember. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + If your life is a hard drive, Christ can be your backup. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers