Missing quotes when deparsing XMLTABLE() and SQL/JSON query functions

Dean Rasheed <dean.a.rasheed@gmail.com>

From: Dean Rasheed <dean.a.rasheed@gmail.com>
To: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2025-01-11T12:30:38Z
Lists: pgsql-hackers

Attachments

While looking over ruleutils.c, I noticed a couple of places that fail
to properly quote certain outputs:

1. XML namespace names in XMLTABLE().

2. variable names in the PASSING clause of the SQL/JSON query
functions JSON_EXISTS(), JSON_QUERY(), and JSON_VALUE() (but not
JSON_TABLE(), which has similar code that does quote variable names
properly).

I scanned the rest of ruleutils.c, and didn't find any other issues.

Regards,
Dean

Commits

  1. Fix JsonExpr deparsing to quote variable names in the PASSING clause.

  2. Fix XMLTABLE() deparsing to quote namespace names if necessary.