Re: Who is a maintainer of GiST code ?

Поиск
Список
Период
Сортировка
От Hannu Krosing
Тема Re: Who is a maintainer of GiST code ?
Дата
Msg-id 3A3EA5F2.DF22E9E6@tm.ee
обсуждение исходный текст
Ответ на Re: Who is a maintainer of GiST code ?  (Oleg Bartunov <oleg@sai.msu.su>)
Ответы Re: Who is a maintainer of GiST code ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Who is a maintainer of GiST code ?  (Oleg Bartunov <oleg@sai.msu.su>)
Список pgsql-hackers
Tom Lane wrote:
> 
> Oleg Bartunov <oleg@sai.msu.su> writes:
> > We have a problem with
> > handling NULL values in GiST. Any thought how NULL values
> > are handle in Rtree.
> 
> AFAIR, none of the index access methods except btree handle NULLs at
> all --- they just ignore NULL values and don't store them in the index.
> Feel free to improve on that ;-).  The physical representation of index
> tuples can handle NULLs, the problem is teaching the index logic where
> they should go in the index.
> 
>                         regards, tom lane


and I can't see why btree stores them (as it seems to do judging by the 
index file size) - at least it does not use it for searching for "IS
NULL"

--8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<------

hannu=# explain select * from nulltest where i is null;
NOTICE:  QUERY PLAN:

Seq Scan on nulltest  (cost=0.00..293.80 rows=5461 width=8)

EXPLAIN
hannu=# explain select * from nulltest where i =1;
NOTICE:  QUERY PLAN:

Index Scan using nulltest_i_ndx on nulltest  (cost=0.00..96.95 rows=164
width=8)

--8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<------

nulltest is a 16k record table with numbers 1 to 16384 in field i

If it just ignored them we would have a nice way to fake partial indexes
- 
just define a function that returns field value or null and then index
on that ;)

-----------
Hannu


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

Предыдущее
От: "Mikheev, Vadim"
Дата:
Сообщение: RE: heap page corruption not easy
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Who is a maintainer of GiST code ?