pgsql: postgres_fdw: Fix deparsing of remote column names in stats impo

From: Etsuro Fujita <efujita(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: postgres_fdw: Fix deparsing of remote column names in stats impo
Date: 2026-05-14 08:07:19
Message-ID: E1wNR6E-000SwU-2j@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

postgres_fdw: Fix deparsing of remote column names in stats import.

build_remattrmap() deparses a list of remote column names for a query
that retrieves attribute stats for them from the remote server.
Previously, it did so by using the array-literal syntax with each column
name individually quoted by quote_identifier(), causing the query to
fail on the remote server with a syntax error or no results when that
column name included a single quote or backslash, as quote_identifier()
doesn't escape those characters, making the query invalid or incorrect.
Fix by switching from the array-literal syntax to the ARRAY constructor
syntax with each column name individually quoted by
deparseStringLiteral().

Oversight in commit 28972b6fc.

Reported-by: Satya Narlapuram <satyanarlapuram(at)gmail(dot)com>
Reported-by: Ayush Tiwari <ayushtiwari(dot)slg01(at)gmail(dot)com>
Author: Ayush Tiwari <ayushtiwari(dot)slg01(at)gmail(dot)com>
Reviewed-by: Alex Guo <guo(dot)alex(dot)hengchen(at)gmail(dot)com>
Reviewed-by: Zhenwei Shang <a934172442(at)gmail(dot)com>
Reviewed-by: Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com>
Discussion: https://postgr.es/m/CAHg%2BQDc9%3DWtYi%3DJW6QUL6ASOJc6PcGPTuxoMkhnkQ7oi7j5atg%40mail.gmail.com
Discussion: https://postgr.es/m/CAJTYsWWGhVDFjr%2BsmdYdU-Q_TT9YMzXA4QcLCr7rizDOyrEEow%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5107398e6d5ecad96f3d1c0efcfc9aa02b9cdff9

Modified Files
--------------
contrib/postgres_fdw/expected/postgres_fdw.out | 12 ++++++++++++
contrib/postgres_fdw/postgres_fdw.c | 8 ++++----
contrib/postgres_fdw/sql/postgres_fdw.sql | 13 +++++++++++++
3 files changed, 29 insertions(+), 4 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Alexander Korotkov 2026-05-14 12:05:36 pgsql: Add tests for cross-session temp table access
Previous Message Michael Paquier 2026-05-14 07:03:24 pgsql: Fix jsonpath .split_part() to honor silent mode