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  (Simon Riggs <simon@2ndquadrant.com>)
Список 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 по дате отправления:

Предыдущее
От: "Pascal Van De Gucht"
Дата:
Сообщение: BUG #3604: lo_import does not work with filenames with accents
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: create index concurrently blocks on transactions in other databases