[postgis-devel] [PostGIS] #627: PostGIS/PostgreSQL process terminates on invalid geometry
PostGIS
trac at osgeo.org
Tue Nov 23 02:01:59 PST 2010
#627: PostGIS/PostgreSQL process terminates on invalid geometry
-------------------------+--------------------------------------------------
Reporter: hopfgartner | Owner: pramsey
Type: defect | Status: new
Priority: medium | Milestone: PostGIS 1.5.3
Component: postgis | Version: 1.5.X
Keywords: |
-------------------------+--------------------------------------------------
Comment(by hopfgartner):
The backtrace looks like:
Program received signal SIGABRT, Aborted.
0x00000032ba230265 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00000032ba230265 in raise () from /lib64/libc.so.6
#1 0x00000032ba231d10 in abort () from /lib64/libc.so.6
#2 0x00000032ba2296e6 in __assert_fail () from /lib64/libc.so.6
#3 0x00000032c56c8dde in geos::geomgraph::Node::add (this=<value
optimized out>, e=<value optimized out>) at Node.cpp:140
#4 0x00000032c56cb6d0 in geos::geomgraph::PlanarGraph::add (this=<value
optimized out>, e=<value optimized out>)
at PlanarGraph.cpp:158
#5 0x00000032c56cb7f4 in geos::geomgraph::PlanarGraph::addEdges
(this=<value optimized out>, edgesToAdd=<value optimized out>)
at PlanarGraph.cpp:238
#6 0x00000032c57076c6 in geos::operation::buffer::BufferBuilder::buffer
(this=<value optimized out>, g=<value optimized out>,
distance=<value optimized out>) at BufferBuilder.cpp:394
#7 0x00000032c5709ffb in
geos::operation::buffer::BufferOp::bufferOriginalPrecision (this=<value
optimized out>)
at BufferOp.cpp:162
#8 0x00000032c570a0b6 in
geos::operation::buffer::BufferOp::computeGeometry (this=<value optimized
out>) at BufferOp.cpp:111
#9 0x00000032c570a16c in
geos::operation::buffer::BufferOp::getResultGeometry (this=<value
optimized out>,
nDistance=<value optimized out>) at BufferOp.cpp:98
#10 0x00000032c62109e0 in GEOSBufferWithStyle_r (extHandle=<value
optimized out>, g1=<value optimized out>,
width=<value optimized out>, quadsegs=<value optimized out>,
endCapStyle=<value optimized out>,
joinStyle=<value optimized out>, mitreLimit=<value optimized out>) at
geos_ts_c.cpp:1455
#11 0x00002aac17099238 in buffer (fcinfo=0x7fffb7b9af50) at
lwgeom_geos.c:989
#12 0x000000000053b392 in ExecMakeFunctionResult (fcache=0x11a803a0,
econtext=0x11a80c80, isNull=0x7fffb7b9b35f "", isDone=0x0)
at execQual.c:1789
#13 0x000000000053d33a in ExecEvalExprSwitchContext (expression=0x5a51,
econtext=0x5a51, isNull=0x6 <Address 0x6 out of bounds>,
isDone=0xffffffffffffffff) at execQual.c:4206
#14 0x000000000059de74 in evaluate_expr (expr=<value optimized out>,
result_type=16400, result_typmod=-1) at clauses.c:3856
#15 0x000000000059f10e in evaluate_function (funcid=16868,
result_type=16400, result_typmod=-1, args=0x7fffb7b9b780,
allow_inline=1 '\001', context=0x7fffb7b9b910) at clauses.c:3467
#16 simplify_function (funcid=16868, result_type=16400, result_typmod=-1,
args=0x7fffb7b9b780, allow_inline=1 '\001',
context=0x7fffb7b9b910) at clauses.c:3271
#17 0x000000000059f9de in eval_const_expressions_mutator (node=0x11a78700,
context=0x7fffb7b9b910) at clauses.c:2152
#18 0x00000000005624b2 in expression_tree_mutator (node=0x11a78870,
mutator=0x59f680 <eval_const_expressions_mutator>,
context=0x7fffb7b9b910) at nodeFuncs.c:2014
#19 0x000000000059f7bd in eval_const_expressions_mutator (node=0x11a78750,
context=0x7fffb7b9b910) at clauses.c:2969
#20 0x0000000000562ce6 in expression_tree_mutator (node=0x0,
mutator=0x59f680 <eval_const_expressions_mutator>,
context=0x7fffb7b9b910) at nodeFuncs.c:1944
#21 0x000000000059f7bd in eval_const_expressions_mutator (node=0x11a78680,
context=0x7fffb7b9b910) at clauses.c:2969
#22 0x00000000005a07ff in eval_const_expressions (root=<value optimized
out>, node=0xffffffffffffffff) at clauses.c:2045
#23 0x0000000000592521 in preprocess_expression (root=0x11a3b938,
expr=0x5a51, kind=1) at planner.c:541
#24 0x0000000000594c54 in subquery_planner (glob=0x11a3a400,
parse=0x11a3a9b0, parent_root=0x0, hasRecursion=0 '\000',
tuple_fraction=0, subroot=0x7fffb7b9bb08) at planner.c:376
#25 0x00000000005951e3 in standard_planner (parse=0x11a3a9b0,
cursorOptions=0, boundParams=0x0) at planner.c:190
#26 0x00000000005d9f61 in pg_plan_query (querytree=0x11a3a9b0,
cursorOptions=0, boundParams=0x0) at postgres.c:697
#27 0x00000000005da01e in pg_plan_queries (querytrees=<value optimized
out>, cursorOptions=0, boundParams=0x0) at postgres.c:756
#28 0x00000000005da804 in exec_simple_query (
query_string=0x11a39be0 "SELECT buffer('0101000020E864", '0' <repeats
16 times>, "F8FF", '0' <repeats 12 times>, "F8FF', 50.0);") at
postgres.c:920
#29 0x00000000005db55b in PostgresMain (argc=4, argv=<value optimized
out>, username=0x1199bc00 "postgres") at postgres.c:3614
#30 0x00000000005b1d8d in ServerLoop () at postmaster.c:3462
#31 0x00000000005b2b3c in PostmasterMain (argc=5, argv=0x11997a50) at
postmaster.c:1040
#32 0x00000000005603be in main (argc=5, argv=<value optimized out>) at
main.c:188
--
Ticket URL: <http://trac.osgeo.org/postgis/ticket/627#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-devel
mailing list