[postgis-tickets] [PostGIS] #4434: ST_Intersects planning time crash on PG12

PostGIS trac at osgeo.org
Mon Jun 24 02:52:28 PDT 2019


#4434: ST_Intersects planning time crash on PG12
---------------------+---------------------------
 Reporter:  komzpa   |      Owner:  pramsey
     Type:  defect   |     Status:  new
 Priority:  medium   |  Milestone:  PostGIS 3.0.0
Component:  postgis  |    Version:  trunk
 Keywords:           |
---------------------+---------------------------
 {{{                                   '.
 Program terminated with signal SIGSEGV, Segmentation fault.
 #0  0x0000000000000000 in ?? ()
 (gdb) ие
 Undefined command: "".  Try "help".
 (gdb) bt
 #0  0x0000000000000000 in ?? ()
 #1  0x0000564420046a99 in CatalogCacheComputeHashValue
 (cache=cache at entry=0x564421ca4b80, nkeys=nkeys at entry=3,
 v1=v1 at entry=96399022, v2=v2 at entry=2, v3=v3 at entry=1, v4=v4 at entry=0) at
 ./build/../src/backend/utils/cache/catcache.c:289
 #2  0x0000564420048669 in SearchCatCacheInternal (v4=0, v3=1, v2=2,
 v1=96399022, nkeys=3, cache=0x564421ca4b80) at
 ./build/../src/backend/utils/cache/catcache.c:1236
 #3  SearchCatCache3 (cache=0x564421ca4b80, v1=v1 at entry=96399022,
 v2=v2 at entry=2, v3=v3 at entry=1) at
 ./build/../src/backend/utils/cache/catcache.c:1183
 #4  0x0000564420059bc3 in SearchSysCache3 (cacheId=cacheId at entry=57,
 key1=key1 at entry=96399022, key2=key2 at entry=2, key3=key3 at entry=1) at
 ./build/../src/backend/utils/cache/syscache.c:1153
 #5  0x00007fc0ebcea6bd in pg_get_nd_stats
 (table_oid=table_oid at entry=96399022, att_num=2, mode=mode at entry=2,
 only_parent=only_parent at entry=false) at gserialized_estimate.c:959
 #6  0x00007fc0ebcedbd3 in gserialized_joinsel_internal (root=<optimized
 out>, args=<optimized out>, jointype=<optimized out>, mode=mode at entry=2)
 at gserialized_estimate.c:1292
 #7  0x00007fc0ebce77b7 in postgis_index_supportfn (fcinfo=<optimized out>)
 at gserialized_supportfn.c:211
 #8  0x000056442006733d in FunctionCall1Coll (flinfo=0x7ffd623f2c00,
 collation=<optimized out>, arg1=<optimized out>) at
 ./build/../src/backend/utils/fmgr/fmgr.c:1140
 #9  0x0000564420067b45 in OidFunctionCall1Coll (functionId=<optimized
 out>, collation=collation at entry=0, arg1=arg1 at entry=140726251760768) at
 ./build/../src/backend/utils/fmgr/fmgr.c:1418
 #10 0x000056441fe97c69 in function_selectivity
 (root=root at entry=0x564421ce0ab0, funcid=<optimized out>,
 args=0x564421d0b338, inputcollid=0, is_join=<optimized out>,
 varRelid=varRelid at entry=0, jointype=JOIN_INNER, sjinfo=0x7ffd623f2ff0) at
 ./build/../src/backend/optimizer/util/plancat.c:1884
 #11 0x000056441fe5551a in clause_selectivity (root=0x564421ce0ab0,
 clause=0x564421d0b278, varRelid=0, jointype=JOIN_INNER, sjinfo=<optimized
 out>) at ./build/../src/backend/optimizer/path/clausesel.c:555
 #12 0x000056441fe55ab5 in clauselist_selectivity_simple
 (root=0x564421ce0ab0, clauses=0x564421d56300, varRelid=0,
 jointype=JOIN_INNER, sjinfo=0x7ffd623f2ff0, estimatedclauses=0x0) at
 ./build/../src/include/nodes/pg_list.h:79
 #13 0x000056441fe55c35 in clauselist_selectivity
 (root=root at entry=0x564421ce0ab0, clauses=clauses at entry=0x564421d56300,
 varRelid=varRelid at entry=0, jointype=jointype at entry=JOIN_INNER,
 sjinfo=sjinfo at entry=0x7ffd623f2ff0) at
 ./build/../src/backend/optimizer/path/clausesel.c:103
 #14 0x000056441fe56b10 in calc_joinrel_size_estimate
 (root=root at entry=0x564421ce0ab0, outer_rows=503, inner_rows=1,
 sjinfo=sjinfo at entry=0x7ffd623f2ff0,
 restrictlist_in=restrictlist_in at entry=0x564421d56300, inner_rel=<optimized
 out>, outer_rel=<optimized out>, joinrel=<optimized out>)
     at ./build/../src/backend/optimizer/path/costsize.c:4635
 #15 0x000056441fe5bf2a in set_joinrel_size_estimates
 (root=root at entry=0x564421ce0ab0, rel=rel at entry=0x564421d0fa78,
 outer_rel=outer_rel at entry=0x564421d0c8b0,
 inner_rel=inner_rel at entry=0x564421d0d320,
 sjinfo=sjinfo at entry=0x7ffd623f2ff0,
 restrictlist=restrictlist at entry=0x564421d56300)
     at ./build/../src/backend/optimizer/path/costsize.c:4490
 #16 0x000056441fe9b518 in build_join_rel (root=root at entry=0x564421ce0ab0,
 joinrelids=joinrelids at entry=0x564421d54048,
 outer_rel=outer_rel at entry=0x564421d0c8b0,
 inner_rel=inner_rel at entry=0x564421d0d320, sjinfo=0x7ffd623f2ff0,
 restrictlist_ptr=restrictlist_ptr at entry=0x7ffd623f2fe8)
     at ./build/../src/backend/optimizer/util/relnode.c:710
 #17 0x000056441fe67525 in make_join_rel (root=root at entry=0x564421ce0ab0,
 rel1=rel1 at entry=0x564421d0c8b0, rel2=rel2 at entry=0x564421d0d320) at
 ./build/../src/backend/optimizer/path/joinrels.c:724
 #18 0x000056441fe67797 in make_rels_by_clause_joins (other_rels=<optimized
 out>, old_rel=<optimized out>, root=<optimized out>) at
 ./build/../src/backend/optimizer/path/joinrels.c:289
 #19 join_search_one_level (root=root at entry=0x564421ce0ab0,
 level=level at entry=2) at
 ./build/../src/backend/optimizer/path/joinrels.c:111
 #20 0x000056441fe54a2b in standard_join_search (root=0x564421ce0ab0,
 levels_needed=4, initial_rels=<optimized out>) at
 ./build/../src/backend/optimizer/path/allpaths.c:2881
 #21 0x000056441fe54e87 in make_one_rel (root=root at entry=0x564421ce0ab0,
 joinlist=joinlist at entry=0x564421d0b998) at
 ./build/../src/backend/optimizer/path/allpaths.c:227
 #22 0x000056441fe74dac in query_planner (root=root at entry=0x564421ce0ab0,
 qp_callback=qp_callback at entry=0x56441fe762f0 <standard_qp_callback>,
 qp_extra=qp_extra at entry=0x7ffd623f32d0) at
 ./build/../src/backend/optimizer/plan/planmain.c:271
 #23 0x000056441fe791fa in grouping_planner (root=<optimized out>,
 inheritance_update=false, tuple_fraction=<optimized out>) at
 ./build/../src/backend/optimizer/plan/planner.c:2048
 #24 0x000056441fe7bba8 in subquery_planner
 (glob=glob at entry=0x564421ce0350, parse=parse at entry=0x564421cdfe18,
 parent_root=parent_root at entry=0x0, hasRecursion=hasRecursion at entry=false,
 tuple_fraction=tuple_fraction at entry=0) at
 ./build/../src/backend/optimizer/plan/planner.c:1012
 #25 0x000056441fe7ccd5 in standard_planner (parse=0x564421cdfe18,
 cursorOptions=256, boundParams=<optimized out>) at
 ./build/../src/backend/optimizer/plan/planner.c:406
 #26 0x000056441ff32982 in pg_plan_query
 (querytree=querytree at entry=0x564421cdfe18,
 cursorOptions=cursorOptions at entry=256, boundParams=boundParams at entry=0x0)
 at ./build/../src/backend/tcop/postgres.c:878
 #27 0x000056441ff32a56 in pg_plan_queries (querytrees=<optimized out>,
 cursorOptions=cursorOptions at entry=256, boundParams=boundParams at entry=0x0)
 at ./build/../src/backend/tcop/postgres.c:968
 #28 0x000056441ff32f1f in exec_simple_query (query_string=0x564421bf0bb0
 "select distinct on (ST_FORCE2D(t.geom)) ST_Segmentize(t.geom ::
 geography, 50) :: geometry geom, up.point_index\n", ' ' <repeats 70
 times>, "from spanning_tree"...) at
 ./build/../src/backend/tcop/postgres.c:1143
 #29 0x000056441ff3464e in PostgresMain (argc=<optimized out>,
 argv=argv at entry=0x564421c4a5c0, dbname=<optimized out>,
 username=<optimized out>) at ./build/../src/backend/tcop/postgres.c:4249
 #30 0x000056441feba609 in BackendRun (port=0x564421c40ba0,
 port=0x564421c40ba0) at
 ./build/../src/backend/postmaster/postmaster.c:4431
 #31 BackendStartup (port=0x564421c40ba0) at
 ./build/../src/backend/postmaster/postmaster.c:4122
 #32 ServerLoop () at ./build/../src/backend/postmaster/postmaster.c:1704
 #33 0x000056441febb52f in PostmasterMain (argc=5, argv=0x564421be7c00) at
 ./build/../src/backend/postmaster/postmaster.c:1377
 #34 0x000056441fc23efd in main (argc=5, argv=0x564421be7c00) at
 ./build/../src/backend/main/main.c:228
 (gdb) bt full
 #0  0x0000000000000000 in ?? ()
 No symbol table info available.
 #1  0x0000564420046a99 in CatalogCacheComputeHashValue
 (cache=cache at entry=0x564421ca4b80, nkeys=nkeys at entry=3,
 v1=v1 at entry=96399022, v2=v2 at entry=2, v3=v3 at entry=1, v4=v4 at entry=0) at
 ./build/../src/backend/utils/cache/catcache.c:289
         hashValue = 0
         oneHash = <optimized out>
         cc_hashfunc = 0x564421ca4b98
         __func__ = "CatalogCacheComputeHashValue"
 #2  0x0000564420048669 in SearchCatCacheInternal (v4=0, v3=1, v2=2,
 v1=96399022, nkeys=3, cache=0x564421ca4b80) at
 ./build/../src/backend/utils/cache/catcache.c:1236
         hashValue = <optimized out>
         iter = <optimized out>
         bucket = <optimized out>
         arguments = {96399022, 2, 1, 0}
         hashIndex = <optimized out>
         ct = <optimized out>
         arguments = <optimized out>
         hashValue = <optimized out>
         hashIndex = <optimized out>
         iter = <optimized out>
         bucket = <optimized out>
         ct = <optimized out>
 #3  SearchCatCache3 (cache=0x564421ca4b80, v1=v1 at entry=96399022,
 v2=v2 at entry=2, v3=v3 at entry=1) at
 ./build/../src/backend/utils/cache/catcache.c:1183
 No locals.
 #4  0x0000564420059bc3 in SearchSysCache3 (cacheId=cacheId at entry=57,
 key1=key1 at entry=96399022, key2=key2 at entry=2, key3=key3 at entry=1) at
 ./build/../src/backend/utils/cache/syscache.c:1153
 No locals.
 #5  0x00007fc0ebcea6bd in pg_get_nd_stats
 (table_oid=table_oid at entry=96399022, att_num=2, mode=mode at entry=2,
 only_parent=only_parent at entry=false) at gserialized_estimate.c:959
         stats_tuple = 0x0
         nd_stats = <optimized out>
 #6  0x00007fc0ebcedbd3 in gserialized_joinsel_internal (root=<optimized
 out>, args=<optimized out>, jointype=<optimized out>, mode=mode at entry=2)
 at gserialized_estimate.c:1292
         selectivity = <optimized out>
         relid1 = 96399022
         relid2 = 96399051
         stats1 = <optimized out>
         stats2 = <optimized out>
         arg1 = 0x564421d0b2c8
         arg2 = 0x564421d0b368
         var1 = 0x564421d0b2c8
         var2 = 0x564421d0b368
         __func__ = "gserialized_joinsel_internal"
 #7  0x00007fc0ebce77b7 in postgis_index_supportfn (fcinfo=<optimized out>)
 at gserialized_supportfn.c:211
         req = 0x7ffd623f2c80
         rawreq = 0x7ffd623f2c80
         ret = 0x0
         __func__ = "postgis_index_supportfn"
 #8  0x000056442006733d in FunctionCall1Coll (flinfo=0x7ffd623f2c00,
 collation=<optimized out>, arg1=<optimized out>) at
 ./build/../src/backend/utils/fmgr/fmgr.c:1140
         fcinfodata = {fcinfo = {flinfo = 0x7ffd623f2c00, context = 0x0,
 resultinfo = 0x0, fncollation = 0, isnull = false, nargs = 1, args =
 0x7ffd623f2bc0}, fcinfo_data = "\000,?b\375\177", '\000' <repeats 23
 times>, "\253\001\000\200,?b\375\177\000\000\000,?b\375\177\000"}
         fcinfo = 0x7ffd623f2ba0
         result = <optimized out>
         __func__ = "FunctionCall1Coll"
         __errno_location = <optimized out>
 #9  0x0000564420067b45 in OidFunctionCall1Coll (functionId=<optimized
 out>, collation=collation at entry=0, arg1=arg1 at entry=140726251760768) at
 ./build/../src/backend/utils/fmgr/fmgr.c:1418
         flinfo = {fn_addr = 0x7fc0ebce7480 <postgis_index_supportfn>,
 fn_oid = 164073987, fn_nargs = 1, fn_strict = false, fn_retset = false,
 fn_stats = 1 '\001', fn_extra = 0x0, fn_mcxt = 0x564421bf0aa0, fn_expr =
 0x0}
 #10 0x000056441fe97c69 in function_selectivity
 (root=root at entry=0x564421ce0ab0, funcid=<optimized out>,
 args=0x564421d0b338, inputcollid=0, is_join=<optimized out>,
 varRelid=varRelid at entry=0, jointype=JOIN_INNER, sjinfo=0x7ffd623f2ff0) at
 ./build/../src/backend/optimizer/util/plancat.c:1884
         prosupport = <optimized out>
         req = {type = T_SupportRequestSelectivity, root = 0x564421ce0ab0,
 funcid = 17676, args = 0x564421d0b338, inputcollid = 0, is_join = true,
 varRelid = 0, jointype = JOIN_INNER, sjinfo = 0x7ffd623f2ff0, selectivity
 = -1}
         sresult = <optimized out>
         __func__ = "function_selectivity"
 #11 0x000056441fe5551a in clause_selectivity (root=0x564421ce0ab0,
 clause=0x564421d0b278, varRelid=0, jointype=JOIN_INNER, sjinfo=<optimized
 out>) at ./build/../src/backend/optimizer/path/clausesel.c:555
         funcclause = 0x564421d0b278
         s1 = 0.5
         rinfo = <optimized out>
         cacheable = true
 #12 0x000056441fe55ab5 in clauselist_selectivity_simple
 (root=0x564421ce0ab0, clauses=0x564421d56300, varRelid=0,
 jointype=JOIN_INNER, sjinfo=0x7ffd623f2ff0, estimatedclauses=0x0) at
 ./build/../src/include/nodes/pg_list.h:79
         s1 = 1
         rqlist = 0x0
         l = <optimized out>
         listidx = <optimized out>
 #13 0x000056441fe55c35 in clauselist_selectivity
 (root=root at entry=0x564421ce0ab0, clauses=clauses at entry=0x564421d56300,
 varRelid=varRelid at entry=0, jointype=jointype at entry=JOIN_INNER,
 sjinfo=sjinfo at entry=0x7ffd623f2ff0) at
 ./build/../src/backend/optimizer/path/clausesel.c:103
         s1 = 1
         rel = <optimized out>
         estimatedclauses = 0x0
 #14 0x000056441fe56b10 in calc_joinrel_size_estimate
 (root=root at entry=0x564421ce0ab0, outer_rows=503, inner_rows=1,
 sjinfo=sjinfo at entry=0x7ffd623f2ff0,
 restrictlist_in=restrictlist_in at entry=0x564421d56300, inner_rel=<optimized
 out>, outer_rel=<optimized out>, joinrel=<optimized out>)
     at ./build/../src/backend/optimizer/path/costsize.c:4635
         restrictlist = 0x564421d56300
         jointype = JOIN_INNER
         fkselec = 1
         jselec = <optimized out>
         pselec = <optimized out>
         nrows = <optimized out>
         __func__ = "calc_joinrel_size_estimate"
 #15 0x000056441fe5bf2a in set_joinrel_size_estimates
 (root=root at entry=0x564421ce0ab0, rel=rel at entry=0x564421d0fa78,
 outer_rel=outer_rel at entry=0x564421d0c8b0,
 inner_rel=inner_rel at entry=0x564421d0d320,
 sjinfo=sjinfo at entry=0x7ffd623f2ff0,
 restrictlist=restrictlist at entry=0x564421d56300)
     at ./build/../src/backend/optimizer/path/costsize.c:4490
 No locals.
 #16 0x000056441fe9b518 in build_join_rel (root=root at entry=0x564421ce0ab0,
 joinrelids=joinrelids at entry=0x564421d54048,
 outer_rel=outer_rel at entry=0x564421d0c8b0,
 inner_rel=inner_rel at entry=0x564421d0d320, sjinfo=0x7ffd623f2ff0,
 restrictlist_ptr=restrictlist_ptr at entry=0x7ffd623f2fe8)
     at ./build/../src/backend/optimizer/util/relnode.c:710
         joinrel = 0x564421d0fa78
 --Type <RET> for more, q to quit, c to continue without paging--
         restrictlist = 0x564421d56300
 #17 0x000056441fe67525 in make_join_rel (root=root at entry=0x564421ce0ab0,
 rel1=rel1 at entry=0x564421d0c8b0, rel2=rel2 at entry=0x564421d0d320) at
 ./build/../src/backend/optimizer/path/joinrels.c:724
         joinrelids = 0x564421d54048
         sjinfo = 0x7ffd623f2ff0
         reversed = false
         sjinfo_data = {type = T_SpecialJoinInfo, min_lefthand =
 0x564421d0cac0, min_righthand = 0x564421d0cf90, syn_lefthand =
 0x564421d0cac0, syn_righthand = 0x564421d0cf90, jointype = JOIN_INNER,
 lhs_strict = false, delay_upper_joins = false, semi_can_btree = false,
 semi_can_hash = false, semi_operators = 0x0,
           semi_rhs_exprs = 0x0}
         joinrel = <optimized out>
         restrictlist = 0x564421d56300
         trel = <optimized out>
 #18 0x000056441fe67797 in make_rels_by_clause_joins (other_rels=<optimized
 out>, old_rel=<optimized out>, root=<optimized out>) at
 ./build/../src/backend/optimizer/path/joinrels.c:289
         other_rel = 0x564421d0d320
         l = 0x564421d53fd8
         l = <optimized out>
         other_rel = <optimized out>
 #19 join_search_one_level (root=root at entry=0x564421ce0ab0,
 level=level at entry=2) at
 ./build/../src/backend/optimizer/path/joinrels.c:111
         other_rels = <optimized out>
         old_rel = 0x564421d0c8b0
         joinrels = 0x564421d53ff8
         r = 0x564421d53fb8
         k = <optimized out>
         __func__ = "join_search_one_level"
 #20 0x000056441fe54a2b in standard_join_search (root=0x564421ce0ab0,
 levels_needed=4, initial_rels=<optimized out>) at
 ./build/../src/backend/optimizer/path/allpaths.c:2881
         lc = <optimized out>
         lev = 2
         rel = <optimized out>
         __func__ = "standard_join_search"
 #21 0x000056441fe54e87 in make_one_rel (root=root at entry=0x564421ce0ab0,
 joinlist=joinlist at entry=0x564421d0b998) at
 ./build/../src/backend/optimizer/path/allpaths.c:227
         rel = <optimized out>
         rti = <optimized out>
         total_pages = <optimized out>
 #22 0x000056441fe74dac in query_planner (root=root at entry=0x564421ce0ab0,
 qp_callback=qp_callback at entry=0x56441fe762f0 <standard_qp_callback>,
 qp_extra=qp_extra at entry=0x7ffd623f32d0) at
 ./build/../src/backend/optimizer/plan/planmain.c:271
         parse = 0x564421cdfe18
         joinlist = 0x564421d0b998
         final_rel = <optimized out>
         __func__ = "query_planner"
 #23 0x000056441fe791fa in grouping_planner (root=<optimized out>,
 inheritance_update=false, tuple_fraction=<optimized out>) at
 ./build/../src/backend/optimizer/plan/planner.c:2048
         sort_input_targets = 0x0
         sort_input_target_parallel_safe = <optimized out>
         grouping_target = <optimized out>
         scanjoin_target = <optimized out>
         activeWindows = <optimized out>
         qp_extra = {activeWindows = 0x0, groupClause = 0x0}
         sort_input_targets_contain_srfs = 0x7ffd623f3330
         have_grouping = <optimized out>
         wflists = <optimized out>
         gset_data = 0x0
         sort_input_target = <optimized out>
         grouping_targets = 0x56441fe8be91
 <eval_const_expressions_mutator+721>
         grouping_target_parallel_safe = <optimized out>
         scanjoin_targets = 0x564421d0af18
         scanjoin_target_parallel_safe = <optimized out>
         grouping_targets_contain_srfs = 0x564421d0b048
         scanjoin_targets_contain_srfs = 0x564421ce0ab0
         scanjoin_target_same_exprs = <optimized out>
         agg_costs = {numAggs = 0, numOrderedAggs = 0, hasNonPartial =
 false, hasNonSerial = false, transCost = {startup = 0, per_tuple = 0},
 finalCost = {startup = 0, per_tuple = 0}, transitionSpace = 0}
         parse = 0x564421cdfe18
         offset_est = 0
         count_est = 0
         limit_tuples = -1
         have_postponed_srfs = false
         final_target = <optimized out>
         final_targets = 0x56441fe80d14 <process_sublinks_mutator+116>
         final_targets_contain_srfs = 0x7ffd623f3340
         final_target_parallel_safe = <optimized out>
         current_rel = <optimized out>
         final_rel = <optimized out>
         extra = {limit_needed = 104, limit_tuples =
 2.2727019708697341e-322, count_est = 140726251762512, offset_est =
 94850595203962}
         lc = <optimized out>
         __func__ = "grouping_planner"
 #24 0x000056441fe7bba8 in subquery_planner
 (glob=glob at entry=0x564421ce0350, parse=parse at entry=0x564421cdfe18,
 parent_root=parent_root at entry=0x0, hasRecursion=hasRecursion at entry=false,
 tuple_fraction=tuple_fraction at entry=0) at
 ./build/../src/backend/optimizer/plan/planner.c:1012
         root = <optimized out>
         newWithCheckOptions = <optimized out>
         newHaving = <optimized out>
         hasOuterJoins = <optimized out>
         hasResultRTEs = <optimized out>
         final_rel = <optimized out>
         l = <optimized out>
 #25 0x000056441fe7ccd5 in standard_planner (parse=0x564421cdfe18,
 cursorOptions=256, boundParams=<optimized out>) at
 ./build/../src/backend/optimizer/plan/planner.c:406
         result = <optimized out>
         glob = 0x564421ce0350
         tuple_fraction = 0
         root = <optimized out>
         final_rel = <optimized out>
         best_path = <optimized out>
 --Type <RET> for more, q to quit, c to continue without paging--
         top_plan = <optimized out>
         lp = <optimized out>
         lr = <optimized out>
 #26 0x000056441ff32982 in pg_plan_query
 (querytree=querytree at entry=0x564421cdfe18,
 cursorOptions=cursorOptions at entry=256, boundParams=boundParams at entry=0x0)
 at ./build/../src/backend/tcop/postgres.c:878
         plan = <optimized out>
 #27 0x000056441ff32a56 in pg_plan_queries (querytrees=<optimized out>,
 cursorOptions=cursorOptions at entry=256, boundParams=boundParams at entry=0x0)
 at ./build/../src/backend/tcop/postgres.c:968
         query = 0x564421cdfe18
         stmt = <optimized out>
         stmt_list = 0x0
         query_list = 0x564421cf5e68
 #28 0x000056441ff32f1f in exec_simple_query (query_string=0x564421bf0bb0
 "select distinct on (ST_FORCE2D(t.geom)) ST_Segmentize(t.geom ::
 geography, 50) :: geometry geom, up.point_index\n", ' ' <repeats 70
 times>, "from spanning_tree"...) at
 ./build/../src/backend/tcop/postgres.c:1143
         parsetree = 0x564421cdfc88
         portal = <optimized out>
         snapshot_set = true
         commandTag = 0x564420199aa4 "SELECT"
         completionTag =
 "\000\000\000\000\002\000\000\000p6?b\375\177\000\000\000\000\000\000\000\000\000\000\250\244\304!DV\000\000`6?b\375\177\000\000\340\067?b\375\177\000\000\260\v\277!DV\000\000\250\244\304!DV\000"
         querytree_list = <optimized out>
         plantree_list = <optimized out>
         receiver = <optimized out>
         format = 0
         dest = DestRemote
         oldcontext = 0x564421cc0800
         parsetree_list = 0x564421cdfcd8
         parsetree_item = 0x564421cdfcb8
         save_log_statement_stats = false
         was_logged = false
         use_implicit_block = false
         msec_str =
 "\000\000\000\000\002\000\000\000p6?b\375\177\000\000\000\000\000\000\000\000\000\000\250\244\304!DV\000"
         __func__ = "exec_simple_query"
 #29 0x000056441ff3464e in PostgresMain (argc=<optimized out>,
 argv=argv at entry=0x564421c4a5c0, dbname=<optimized out>,
 username=<optimized out>) at ./build/../src/backend/tcop/postgres.c:4249
         query_string = 0x564421bf0bb0 "select distinct on
 (ST_FORCE2D(t.geom)) ST_Segmentize(t.geom :: geography, 50) :: geometry
 geom, up.point_index\n", ' ' <repeats 70 times>, "from spanning_tree"...
         firstchar = <optimized out>
         input_message = {data = 0x564421bf0bb0 "select distinct on
 (ST_FORCE2D(t.geom)) ST_Segmentize(t.geom :: geography, 50) :: geometry
 geom, up.point_index\n", ' ' <repeats 70 times>, "from spanning_tree"...,
 len = 1012, maxlen = 1024, cursor = 1012}
         local_sigjmp_buf = {{__jmpbuf = {140726251763712,
 -123453365073212831, 1, 94850624300200, 140726251764576, 94850624261024,
 -123453364964160927, -5964001441627370911}, __mask_was_saved = 1,
 __saved_mask = {__val = {0, 140726251769533, 140726251769498,
 140726251769810, 0, 139637976727552, 94850624261024,
                 140726251763984, 17413074780819009280, 140726251764144,
 94850595312895, 206158430256, 140726251764168, 140726251763968,
 17413074780819009280, 94850623896800}}}}
         send_ready_for_query = false
         disable_idle_in_transaction_timeout = false
         __func__ = "PostgresMain"
 #30 0x000056441feba609 in BackendRun (port=0x564421c40ba0,
 port=0x564421c40ba0) at
 ./build/../src/backend/postmaster/postmaster.c:4431
         av = 0x564421c4a5c0
         maxac = <optimized out>
         ac = 1
         i = 1
         av = <optimized out>
         maxac = <optimized out>
         ac = <optimized out>
         i = <optimized out>
         __func__ = "BackendRun"
         __errno_location = <optimized out>
         __errno_location = <optimized out>
         __errno_location = <optimized out>
 #31 BackendStartup (port=0x564421c40ba0) at
 ./build/../src/backend/postmaster/postmaster.c:4122
         bn = <optimized out>
         pid = <optimized out>
         bn = <optimized out>
         pid = <optimized out>
         __func__ = "BackendStartup"
         __errno_location = <optimized out>
         __errno_location = <optimized out>
         save_errno = <optimized out>
         __errno_location = <optimized out>
         __errno_location = <optimized out>
 #32 ServerLoop () at ./build/../src/backend/postmaster/postmaster.c:1704
         port = 0x564421c40ba0
         i = <optimized out>
         rmask = {fds_bits = {64, 0 <repeats 15 times>}}
         selres = <optimized out>
         now = <optimized out>
         readmask = {fds_bits = {104, 0 <repeats 15 times>}}
         nSockets = 7
         last_lockfile_recheck_time = 1561369481
         last_touch_time = 1561367346
         __func__ = "ServerLoop"
 #33 0x000056441febb52f in PostmasterMain (argc=5, argv=0x564421be7c00) at
 ./build/../src/backend/postmaster/postmaster.c:1377
         opt = <optimized out>
         status = <optimized out>
         userDoption = <optimized out>
         listen_addr_saved = <optimized out>
         i = <optimized out>
         output_config_variable = <optimized out>
         __func__ = "PostmasterMain"
 #34 0x000056441fc23efd in main (argc=5, argv=0x564421be7c00) at
 ./build/../src/backend/main/main.c:228
 No locals.
 }}}

 Offending query:

 {{{
 select distinct on (ST_FORCE2D(t.geom)) ST_Segmentize(t.geom :: geography,
 50) :: geometry geom, up.point_index
                                                                       from
 spanning_tree t,
 user_points up
 where t.point_id = up.id
 and t.point_id in
 (select u.id
 from user_points u,
 isochrones i
 where i.id = 'd88492bf-71a3-43c7-a721-af36ab8a6eb0'::uuid
 and st_intersects(u.geom, i.points));

 }}}

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