Thread: R-Tree implementation using GiST (compatible with multi-key GiST)

R-Tree implementation using GiST (compatible with multi-key GiST)

From
Oleg Bartunov
Date:
Full implementation of R-Tree using GiST is available from
http://www.sai.msu.su/~megera/postgres/gist/

CHANGES:    Mon May 28 19:42:14 MSD 2001
    1. Full implementation of R-tree using GiST - gist_box_ops,gist_poly_ops    2. gist_poly_ops is lossy    3. NULLs
support   4. works with multi-key GiST
 

NOTICE:    This version will works only with postgresql version 7.1 and above    because of changes in interface of
functioncalling.
 


Tom, implementation of gist_poly_ops has a workaround of discussed problem -
we store in first field the length of key in bytes). As soon as we find
a solution we'll change this.


From my message;
compress fully supports fixed-length and varlena types. The problem is
index_formtuple - types of key and column could be different
(example - polygon, where column has varlena type but key is fixed-length)
As a workaround one could use the samy type for key and column.
1st integer field in strcuture BOX3D should be length of this structure
in bytes.

Regards,    Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83





Oleg Bartunov <oleg@sai.msu.su> writes:
> Full implementation of R-Tree using GiST is available from
> http://www.sai.msu.su/~megera/postgres/gist/

Committed as a contrib module.

At some point we'll probably want to move this into the mainframe,
but I left it as a separate package for now.
        regards, tom lane