Base de données relationnelle
Find a file
Peter Eisentraut 4cb2a9863d Fix LATERAL references in GRAPH_TABLE with multi-label pattern
When rewriting a GRAPH_TABLE into a subquery,
replace_property_refs_mutator() bumps levelsup of lateral references
by one so that they reference outside the subquery.  This works for
path patterns that result in only one path query.  Patterns that
produce multiple path queries are rewritten as a UNION of path
queries.  Since every path query becomes a subquery of the UNION
statement, the levelsup of lateral references in those path queries
need an additional bump.  This adjustment was missing resulting in the
lateral references being interpreted as references in the UNION query
itself.  This caused different symptoms like a crash in
create_lateral_join_info() or error "plan should not reference
subplan's variable".  The symptoms varied depending on the number of
RangeTblEntries in the UNION statement.

This commit adds the missing adjustment.

Author: Ayush Tiwari <ayushtiwari.slg01@gmail.com>
Author: Satya Narlapuram <satyanarlapuram@gmail.com>
Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/CAHg%2BQDfnLzsgjaQ_CiKSpP4JH3MKOiwoawEcCzXa9uYr45yiWw%40mail.gmail.com
2026-06-05 09:27:51 +02:00
.github ci: Add GitHub Actions based CI 2026-06-04 14:55:57 -04:00
config Update config.guess and config.sub 2026-04-09 11:26:14 +02:00
contrib xml2: Fix stylesheet document leak in xslt_process() 2026-06-05 14:29:27 +09:00
doc doc: Mention online checksum enabling in pg_checksums docs 2026-06-05 00:12:33 +02:00
src Fix LATERAL references in GRAPH_TABLE with multi-label pattern 2026-06-05 09:27:51 +02:00
.dir-locals.el Make Emacs perl-mode indent more like perltidy. 2019-01-13 11:32:31 -08:00
.editorconfig Update .editorconfig and .gitattributes for postgresql.conf.sample. 2025-11-18 10:28:36 -06:00
.git-blame-ignore-revs Add previous commit to .git-blame-ignore-revs. 2026-06-04 10:16:21 -05:00
.gitattributes Update .editorconfig and .gitattributes for postgresql.conf.sample. 2025-11-18 10:28:36 -06:00
.gitignore Update top-level .gitignore. 2022-12-04 15:23:00 -05:00
.mailmap Add a Git .mailmap file 2024-11-05 13:56:02 +01:00
aclocal.m4 autoconf: Move export_dynamic determination to configure 2022-12-06 18:55:28 -08:00
configure Stamp 19beta1. 2026-06-01 16:02:13 -04:00
configure.ac Stamp 19beta1. 2026-06-01 16:02:13 -04:00
COPYRIGHT Update copyright for 2026 2026-01-01 13:24:10 -05:00
GNUmakefile.in Allow selecting the git revision to be packaged by "make dist". 2024-05-03 11:08:50 -04:00
HISTORY Canonicalize some URLs 2020-02-10 20:47:50 +01:00
Makefile Restore AIX support. 2026-02-23 13:34:22 -05:00
meson.build Stamp 19beta1. 2026-06-01 16:02:13 -04:00
meson_options.txt Revert "Add built-in fuzzing harnesses for security testing." 2026-04-10 09:53:58 -04:00
README.md Revise the style of a paragraph in README.md. 2024-03-21 10:16:41 -05:00

PostgreSQL Database Management System

This directory contains the source code distribution of the PostgreSQL database management system.

PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions. This distribution also contains C language bindings.

Copyright and license information can be found in the file COPYRIGHT.

General documentation about this version of PostgreSQL can be found at https://www.postgresql.org/docs/devel/. In particular, information about building PostgreSQL from the source code can be found at https://www.postgresql.org/docs/devel/installation.html.

The latest version of this software, and related software, may be obtained at https://www.postgresql.org/download/. For more information look at our web site located at https://www.postgresql.org/.