[postgis-tickets] [PostGIS] #4919: SQL reliably crashes Server

PostGIS trac at osgeo.org
Tue May 18 23:21:11 PDT 2021


#4919: SQL reliably crashes Server
----------------------+---------------------------
  Reporter:  Robins   |      Owner:  pramsey
      Type:  defect   |     Status:  new
  Priority:  medium   |  Milestone:  PostGIS 3.1.2
 Component:  postgis  |    Version:  3.0.x
Resolution:           |   Keywords:
----------------------+---------------------------

Comment (by Robins):

 Am running a regression suite and it is (constantly) tripping on this
 backtrace every few minutes (and effectively making this test suite
 useless). Noting it here, to mention that this isn't a corner case or one-
 off.

 It seems this crash / backtrace has special affinity to range operators
 and set comparisons.

 Another example:

 {{{

 select 1
 from public.spatial_ref_sys as sample_0 tablesample bernoulli (6.8)
 where case when ((cast(null as geometry) && cast(null as geometry))
         and (NULL is NULL))
        then case when sample_0.auth_srid is NULL then cast(null as
 geometry) else cast(null as geometry) end
        else case when sample_0.auth_srid is NULL then cast(null as
 geometry) else cast(null as geometry) end
        end
      &/& case when (pg_catalog.pg_current_snapshot() is not NULL)
       and (cast(null as timestamptz) >= (select backend_start from
 pg_catalog.pg_stat_activity limit 1 offset 4)
           ) then public.geometry(
       cast(cast(null as geography) as geography)) else public.geometry(
       cast(cast(null as geography) as geography)) end;

 }}}


 {{{

 #0  detoast_attr_slice (attr=attr at entry=0x0,
 sliceoffset=sliceoffset at entry=0, slicelength=slicelength at entry=40) at
 detoast.c:226
 #1  0x00000000008a3b55 in pg_detoast_datum_slice (datum=datum at entry=0x0,
 first=first at entry=0, count=count at entry=40) at fmgr.c:1754
 #2  0x000014e217f4f793 in gserialized_datum_get_gidx_p
 (gsdatum=gsdatum at entry=0, gidx=gidx at entry=0x7fffb1ba7730) at
 gserialized_gist.c:185


 }}}

-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/4919#comment:2>
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