Re: _bt_check_unique checks every row in table when doing update??

Поиск
Список
Период
Сортировка
От Mats Lofkvist
Тема Re: _bt_check_unique checks every row in table when doing update??
Дата
Msg-id y2q7khue1oi.fsf@algonet.se
обсуждение исходный текст
Ответ на Re: _bt_check_unique checks every row in table when doing update??  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
tgl@sss.pgh.pa.us (Tom Lane) writes:

> Mats Lofkvist <mal@algonet.se> writes:
> > But when doing ~1000 updates (i.e. setting val0 and val1 with
> > a where on an existing key0/key1/key2 triplet), I get this which
> > seems very strange to me:
>
> I suppose you repeatedly updated the same row 1000 times?  That creates
> an O(N^2) behavior because the dead tuples have to be rechecked again
> and again.
>
> 7.3 will be smarter about this.
>
>             regards, tom lane


Yes, I did update the same row so your explanation is correct.
(Note that I also read the data wrong, for some reason I read it
as 500k checks per 1 update, not per 1000 which made it look
a lot worse than it is.)

Thanks for the explanation, I'll try 7.3 beta to see how it
works there.

      _
Mats Lofkvist
mal@algonet.se

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: make unsuccessful on mac os x 10.2
Следующее
От: Michael Fortin
Дата:
Сообщение: Re: make unsuccessful on mac os x 10.2