[postgis-tickets] [PostGIS] #4462: st_asmvtgeom fails with IllegalArgumentException: RobustDeterminant encountered non-finite numbers

PostGIS trac at osgeo.org
Tue Jul 23 09:36:57 PDT 2019


#4462: st_asmvtgeom fails with IllegalArgumentException: RobustDeterminant
encountered non-finite numbers
---------------------+---------------------------
 Reporter:  autra    |      Owner:  pramsey
     Type:  defect   |     Status:  new
 Priority:  medium   |  Milestone:  PostGIS 2.5.3
Component:  postgis  |    Version:  2.5.x
 Keywords:           |
---------------------+---------------------------
 = description

 Using st_asmvtgeom in a query, I sometimes have the following error:

 {{{
 NOTICE:  LWGEOM_GEOS_nodeLines(): IllegalArgumentException:
 RobustDeterminant encountered non-finite numbers
 ERROR:  IllegalArgumentException: RobustDeterminant encountered non-finite
 numbers
 }}}



 = Steps

 - restore the attached dump in a database with postgis extension
 - use the following query

 {{{#!sql
 select st_asmvtgeom(geom,
 st_setsrid(st_makebox2d(st_point(1645442.8949999844, 8184994.56999849),
 st_point
 (1647681.2699999844,8187432.94499849)), 3949)) as mvtgeom from copy3;
 }}}

 **expected**

 The query resumes without errors

 **actual**

 The query fails with the following error:

 {{{
 NOTICE:  00000: LWGEOM_GEOS_nodeLines(): IllegalArgumentException:
 RobustDeterminant encountered non-finite numbers
 LOCATION:  pg_notice, lwgeom_pg.c:184
 ERROR:  XX000: IllegalArgumentException: RobustDeterminant encountered
 non-finite numbers
 LOCATION:  pg_error, lwgeom_pg.c:162
 }}}

 = Additional informations

 The following queries **does** succeed:

 With a larger extent:
 {{{#!sql
 select st_asmvtgeom(geom,
 st_setsrid(st_makebox2d(st_point(1545442.8949999844, 8084994.56999849),
 st_point
 (1747681.2699999844,8287432.94499849)), 3949)) as mvtgeom from copy3;
 }}}

 When I intersect before using st_asmvtgeom:
 {{{#!sql
 select
 st_asmvtgeom(
     st_intersection(
         geom,
         st_setsrid(st_makebox2d(st_point(1645442.8949999844,
 8184994.56999849), st_point(1647681.2699999844,8187432.94499849)), 3949)
     ),
     st_setsrid(st_makebox2d(st_point(1645442.8949999844,
 8184994.56999849), st_point(1647681.2699999844,8187432.94499849)), 3949))
 as mvtgeom
 from copy3;

 }}}



 = Context

 {{{
 # select version();
  PostgreSQL 10.9 (Ubuntu 10.9-0ubuntu0.18.10.1) on x86_64-pc-linux-gnu,
 compiled by gcc (Ubuntu 8.3.0-6ubuntu1~18.10.1) 8.3.0, 64-bit

 # select postgis_version();
 2.5 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
 }}}

 I also reproduce with postgis 2.4







 thanks!

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