On Tue, Apr 21, 2026 at 3:12 PM Alex Guo <guo.alex.hengchen@gmail.com> wrote: > On 4/21/26 4:43 AM, Ayush Tiwari wrote: > The new statistics import feature in postgres_fdw (commit 28972b6fc3d) > builds a remote query to fetch pg_stats rows, filtering by column name > with: > > AND attname = ANY('{col1, col2}'::text[]) > > The column names are formatted with quote_identifier(), which only > escapes double quotes. But since the list is embedded inside a > single-quoted string literal, any single quote in a column name > breaks the literal and produces a syntax error on the remote server.
> The attached patch switches to an ARRAY[] constructor with each > element escaped by deparseStringLiteral(), matching how schemaname > and tablename are already handled in the same function.
Thanks for the report and patch!
> It should also address the issue that was raised in [1].
The root cause of this is the same as [1], so I think you should reply to the thread, rather than creating a new thread.
I faced the issue with the quoting scenario and was unaware of [1] then,
and that patch did not solve the issue regarding the quotes, which is
why I started this. Should I move this there? I've registered it in