[postgis-tickets] [PostGIS] #2291: &&& can't be upgraded from 2.0 to 2.1

PostGIS trac at osgeo.org
Sun Apr 28 14:50:12 PDT 2013


#2291: &&& can't be upgraded from 2.0 to 2.1
---------------------+------------------------------------------------------
 Reporter:  robe     |       Owner:  pramsey      
     Type:  defect   |      Status:  new          
 Priority:  medium   |   Milestone:  PostGIS 2.1.0
Component:  postgis  |     Version:  trunk        
 Keywords:           |  
---------------------+------------------------------------------------------
 As noted in ticket #2279 since the definition of &&& was changed from
 2.0

 {{{
 CREATE OPERATOR &&&(
   PROCEDURE = geometry_overlaps_nd,
   LEFTARG = geometry,
   RIGHTARG = geometry,
   COMMUTATOR = &&&,
   RESTRICT = contsel,
   JOIN = contjoinsel);

 }}}

 to 2.1

 {{{
 CREATE OPERATOR &&&(
   PROCEDURE = geometry_overlaps_nd,
   LEFTARG = geometry,
   RIGHTARG = geometry,
   COMMUTATOR = &&&,
   RESTRICT = gserialized_gist_sel_nd,
   JOIN = gserialized_gist_joinsel_nd);

 }}}

 I presume this means 3D geometry users using &&& will not be able to
 benefit from the fruits of pramsey's labor.

 The problem is you can't drop the operator without dropping the

 gist_geometry_ops_nd class

 and if you drop the opclass you have to drop the 3D indexes.

 The good news is not that many people are using that index and I suspect
 even know about it so probably doesn't affect that many people.

 Options that come to mind:

 {{{
 1) drop if we see in use and also try to drop the operator class and
 rebuild.  users who have indexes will get an error during upgrade, but new
 users who have not started using this feature will get a clean upgrade

 2) Do nothing except document the issue, tell people they need to dump
 /restore if they are or plan to use 3D and let them fend for themselves

 3) Provide a script that drops and rebuilds the indexes (would have to
 itemize)
 }}}


 2 is the easiest for us, meanest for users, but at least we warned if they
 new where to look in the docs.

 3) sounds complicated

  1) is a good balance that is not too hard and yet is nice to future
 users.

 Given we don't have too many people using 3D yet, I'm leaning toward 1.

-- 
Ticket URL: <http://trac.osgeo.org/postgis/ticket/2291>
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