[postgis-tickets] [PostGIS] #3236: ST_OrderingEquals should not have strict on the definition

PostGIS trac at osgeo.org
Tue Aug 11 12:41:57 PDT 2015


#3236: ST_OrderingEquals should not have strict on the definition
----------------------+---------------------------
 Reporter:  robe      |      Owner:  pramsey
     Type:  defect    |     Status:  new
 Priority:  critical  |  Milestone:  PostGIS 2.1.9
Component:  postgis   |    Version:  2.1.x
 Keywords:            |
----------------------+---------------------------
 I was talking with Vicky on pgRouting and she was working on revamping
 osm2pgrouting.

 I asked ehr

 Why are you using && with ST_OrderingEquals and she said "Cause it's super
 slow without it"

 So I looked at the function and what do I see:


 {{{
 CREATE OR REPLACE FUNCTION st_orderingequals(
     geometrya geometry,
     geometryb geometry)
   RETURNS boolean AS
 $$
         SELECT $1 ~= $2 AND _ST_OrderingEquals($1, $2)
 $$
   LANGUAGE sql IMMUTABLE STRICT
   COST 100;
 }}}


 Hmm who put STRICT there -- forcing this function to look opaque to the
 planner thereby preventing the index part from kicking in.

--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/3236>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-tickets mailing list