pgsql: Consider fractional paths in generate_orderedappend_paths - Mailing list pgsql-committers

From Tomas Vondra
Subject pgsql: Consider fractional paths in generate_orderedappend_paths
Date
Msg-id E1n7lTo-0004Vp-SZ@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Consider fractional paths in generate_orderedappend_paths

When building append paths, we've been looking only at startup and total
costs for the paths. When building fractional paths that may eliminate
the cheapest one, because it may be dominated by two separate paths (one
for startup, one for total cost).

This extends generate_orderedappend_paths() to also consider which paths
have lowest fractional cost. Currently we only consider paths matching
pathkeys - in the future this may be improved by also considering paths
that are only partially sorted, with an incremental sort on top.

Original report of an issue by Arne Roland, patch by me (based on a
suggestion by Tom Lane).

Reviewed-by: Arne Roland, Zhihong Yu
Discussion: https://postgr.es/m/e8f9ec90-546d-e948-acce-0525f3e92773%40enterprisedb.com
Discussion: https://postgr.es/m/1581042da8044e71ada2d6e3a51bf7bb%40index.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/6b94e7a6da2f1c6df1a42efe64251f32a444d174

Modified Files
--------------
src/backend/optimizer/path/allpaths.c        | 69 +++++++++++++++++++++++++++-
src/test/regress/expected/partition_join.out | 48 +++++++++++++++++++
src/test/regress/sql/partition_join.sql      | 25 ++++++++++
3 files changed, 141 insertions(+), 1 deletion(-)


pgsql-committers by date:

Previous
From: Alvaro Herrera
Date:
Subject: pgsql: Add index on pg_publication_rel.prpubid
Next
From: Peter Geoghegan
Date:
Subject: pgsql: vacuumlazy.c: fix "garbage tuples" reference.