Opened 6 years ago
Closed 6 years ago
#4111 closed defect (fixed)
debbie failing on PostgreSQL 10 run on topology
Reported by: | robe | Owned by: | robe |
---|---|---|---|
Priority: | blocker | Milestone: | PostGIS PostgreSQL |
Component: | QA/buildbots | Version: | master |
Keywords: | Cc: |
Description
Debbie started failing a day or so ago on her PostgreSQL 10 run.
I suspect it may be a change upstream because her 11 is fine and Bessie 64-bit 10 is also fine.
She follows 10 branch, so they may have accidentally introduced a breaking change:
regress/topoelementarray_agg .. ok regress/topogeo_addlinestring .. failed (diff expected obtained: /var/lib/jenkins/workspace/postgis/tmp/2_5_pg10w64/test_29_diff) ----------------------------------------------------------------------------- --- regress/topogeo_addlinestring_expected 2017-12-27 17:51:25.767418144 +0000 +++ /var/lib/jenkins/workspace/postgis/tmp/2_5_pg10w64/test_29_out 2018-06-26 18:41:30.907981957 +0000 @@ -185,8 +185,7 @@ t3280.start|t t3280|L11 t3280|L22 -t3280|L1b4 -t3280|L1b2 +ERROR: ORDER/GROUP BY expression not found in targetlist t3280.end|Topology 'bug3280' dropped t3380.start|t t3380.L1|1 ----------------------------------------------------------------------------- regress/topogeo_addpoint .. ok regress/topogeo_addpolygon .. ok
Change History (5)
comment:1 by , 6 years ago
Component: | postgis → buildbots |
---|---|
Owner: | changed from | to
comment:2 by , 6 years ago
Milestone: | PostGIS 2.5.0 → PostGIS PostgreSQL |
---|
comment:3 by , 6 years ago
Reported on pgsql-hackers
https://www.postgresql.org/message-id/001501d40f88%2475186950%245f493bf0%24%40pcorp.us
comment:4 by , 6 years ago
I was mistaken about the commit, David Rowley, pointed out it sounds more like this one:
Fix mishandling of sortgroupref labels while splitting SRF targetlists. split_pathtarget_at_srfs() neglected to worry about sortgroupref labels in the intermediate PathTargets it constructs. I think we'd supposed that their labeling didn't matter, but it does at least for the case that GroupAggregate/GatherMerge nodes appear immediately under the ProjectSet step(s). This results in "ERROR: ORDER/GROUP BY expression not found in targetlist" during create_plan(), as reported by Rajkumar Raghuwanshi. To fix, make this logic track the sortgroupref labeling of expressions, not just their contents. This also restores the pre-v10 behavior that separate GROUP BY expressions will be kept distinct even if they are textually equal(). Discussion: https://postgr.es/m/CAKcux6=1_Ye9kx8YLBPmJs_xE72PPc6vNi5q2AOHowMaCWjJ2w@mail.gmail.com
The test we have which triggers it is badly written so we should probably change it anyway as it's using a set returning function in the SELECT (topogeo_AddLineString) and ordering by a constant which doesn't even guarantee ORDER, so why we even have to order by 1 there is kinda hella dumb
SELECT 't3280', 'L1b' || topology.TopoGeo_AddLinestring('bug3280', geom) FROM bug3280.edge where edge_id = 1 ORDER BY 1;
and if we do have an order by there, it should be ORDER BY 2 which actually works :)
SELECT 't3280', 'L1b' || topology.TopoGeo_AddLinestring('bug3280', geom) FROM bug3280.edge where edge_id = 1 ORDER BY 21;
Seems to have started failing after this commit:
I'll report upstream