Re: create index concurrently blocks on transactions in other databases
От | Tom Lane |
---|---|
Тема | Re: create index concurrently blocks on transactions in other databases |
Дата | |
Msg-id | 1473.1189108549@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: create index concurrently blocks on transactions in other databases (Simon Riggs <simon@2ndquadrant.com>) |
Ответы |
Re: create index concurrently blocks on transactions in
other databases
|
Список | pgsql-bugs |
Simon Riggs <simon@2ndquadrant.com> writes: > On Thu, 2007-09-06 at 12:43 +0200, hubert depesz lubaczewski wrote: >> i dont really see why this would be neccessary - i understand that we >> need to wait for transactions in the same db, but waiting for >> transaction in another database? > Manual says "and in addition it must wait for all existing transactions > to terminate." This is needed for MVCC correctness and its not a bug. No, it isn't needed for MVCC correctness. We're just out-waiting transactions that might try to use the index and not find what they should in it. AFAICS Hubert is right: there is no need to wait for xacts in other DBs. (At least for non-shared indexes, but we can't support C.I.C. on shared tables anyway.) This would have been painful to fix in 8.2 but it seems relatively trivial in HEAD --- we just need another filter option in GetCurrentVirtualXIDs. regards, tom lane
В списке pgsql-bugs по дате отправления: