Обсуждение: ignore_killed_tuples is always true

Поиск
Список
Период
Сортировка

ignore_killed_tuples is always true

От
ITAGAKI Takahiro
Дата:
I found IndexScanDesc->ignore_killed_tuples is always true.
Is this still needed?

Also, I cannot understand why gistgetmulti calls gistnext with
ignore_killed_tuples = false. We can always ignore LP_DELETEed tuples, right?

---
ITAGAKI Takahiro
NTT Cyber Space Laboratories

Вложения

Re: ignore_killed_tuples is always true

От
Tom Lane
Дата:
ITAGAKI Takahiro <itagaki.takahiro@lab.ntt.co.jp> writes:
> I found IndexScanDesc->ignore_killed_tuples is always true.
> Is this still needed?

What is the point of removing it?  You cannot argue that saving
one if-test per tuple is a worthwhile speedup.

            regards, tom lane

Re: ignore_killed_tuples is always true

От
Jaime Casanova
Дата:
On 2/10/06, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> ITAGAKI Takahiro <itagaki.takahiro@lab.ntt.co.jp> writes:
> > I found IndexScanDesc->ignore_killed_tuples is always true.
> > Is this still needed?
>
> What is the point of removing it?  You cannot argue that saving
> one if-test per tuple is a worthwhile speedup.
>
>             regards, tom lane
>

to clean code?

--
regards,
Jaime Casanova
(DBA: DataBase Aniquilator ;)

Re: ignore_killed_tuples is always true

От
Tom Lane
Дата:
Jaime Casanova <systemguards@gmail.com> writes:
> On 2/10/06, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> What is the point of removing it?  You cannot argue that saving
>> one if-test per tuple is a worthwhile speedup.

> to clean code?

It's not saving any noticeable amount of code, and what it is doing
is removing functionality we might want someday.  It's not hard to
imagine pgstattuple or VACUUM or other maintenance operations wanting
to look at killed index entries.

            regards, tom lane

Re: ignore_killed_tuples is always true

От
ITAGAKI Takahiro
Дата:
Tom Lane <tgl@sss.pgh.pa.us> wrote:
> It's not saving any noticeable amount of code, and what it is doing
> is removing functionality we might want someday.  It's not hard to
> imagine pgstattuple or VACUUM or other maintenance operations wanting
> to look at killed index entries.

I suggested it not for performance, but for simplicity of code. So if we
still need it, I agree to leave it.

Moreover, LP_DELETEed tuples might be useful for Bitmap NOT And/Or join,
not only maintenance operations. Union-side of bitmap should not contain
LP_DELETEed tuples, and Except-side should do.

---
ITAGAKI Takahiro
NTT Cyber Space Laboratories