pgsql: Extend r-tree operator classes to handle Y-direction tests - Mailing list pgsql-committers
From | tgl@svr1.postgresql.org (Tom Lane) |
---|---|
Subject | pgsql: Extend r-tree operator classes to handle Y-direction tests |
Date | |
Msg-id | 20050624205336.8129652862@svr1.postgresql.org Whole thread Raw |
List | pgsql-committers |
Log Message: ----------- Extend r-tree operator classes to handle Y-direction tests equivalent to the existing X-direction tests. An rtree class now includes 4 actual 2-D tests, 4 1-D X-direction tests, and 4 1-D Y-direction tests. This involved adding four new Y-direction test operators for each of box and polygon; I followed the PostGIS project's lead as to the names of these operators. NON BACKWARDS COMPATIBLE CHANGE: the poly_overleft (&<) and poly_overright (&>) operators now have semantics comparable to box_overleft and box_overright. This is necessary to make r-tree indexes work correctly on polygons. Also, I changed circle_left and circle_right to agree with box_left and box_right --- formerly they allowed the boundaries to touch. This isn't actually essential given the lack of any r-tree opclass for circles, but it seems best to sync all the definitions while we are at it. Modified Files: -------------- pgsql/contrib/rtree_gist: rtree_gist.c (r1.13 -> r1.14) (http://developer.postgresql.org/cvsweb.cgi/pgsql/contrib/rtree_gist/rtree_gist.c.diff?r1=1.13&r2=1.14) rtree_gist.sql.in (r1.10 -> r1.11) (http://developer.postgresql.org/cvsweb.cgi/pgsql/contrib/rtree_gist/rtree_gist.sql.in.diff?r1=1.10&r2=1.11) pgsql/doc/src/sgml: func.sgml (r1.258 -> r1.259) (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/func.sgml.diff?r1=1.258&r2=1.259) indices.sgml (r1.50 -> r1.51) (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/indices.sgml.diff?r1=1.50&r2=1.51) xindex.sgml (r1.39 -> r1.40) (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/xindex.sgml.diff?r1=1.39&r2=1.40) pgsql/src/backend/access/rtree: rtstrat.c (r1.26 -> r1.27) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/rtree/rtstrat.c.diff?r1=1.26&r2=1.27) pgsql/src/backend/utils/adt: geo_ops.c (r1.88 -> r1.89) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/geo_ops.c.diff?r1=1.88&r2=1.89) pgsql/src/include/access: rtree.h (r1.40 -> r1.41) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/rtree.h.diff?r1=1.40&r2=1.41) pgsql/src/include/catalog: catversion.h (r1.280 -> r1.281) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.280&r2=1.281) pg_am.h (r1.35 -> r1.36) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_am.h.diff?r1=1.35&r2=1.36) pg_amop.h (r1.63 -> r1.64) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_amop.h.diff?r1=1.63&r2=1.64) pg_operator.h (r1.133 -> r1.134) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_operator.h.diff?r1=1.133&r2=1.134) pg_proc.h (r1.369 -> r1.370) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h.diff?r1=1.369&r2=1.370) pgsql/src/include/utils: geo_decls.h (r1.46 -> r1.47) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/geo_decls.h.diff?r1=1.46&r2=1.47) pgsql/src/test/regress/expected: opr_sanity.out (r1.58 -> r1.59) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/opr_sanity.out.diff?r1=1.58&r2=1.59) polygon.out (r1.11 -> r1.12) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/polygon.out.diff?r1=1.11&r2=1.12) pgsql/src/test/regress/sql: polygon.sql (r1.7 -> r1.8) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/polygon.sql.diff?r1=1.7&r2=1.8)
pgsql-committers by date: