pgsql: Fix write/read of empty string fields in Nodes. - Mailing list pgsql-committers

From Peter Eisentraut
Subject pgsql: Fix write/read of empty string fields in Nodes.
Date
Msg-id E1ocoEC-00269r-II@gemulon.postgresql.org
Whole thread Raw
Responses Re: pgsql: Fix write/read of empty string fields in Nodes.  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-committers
Fix write/read of empty string fields in Nodes.

Historically, outToken has represented both NULL and empty-string
strings as "<>", which readfuncs.c then read as NULL, thus failing
to preserve empty-string fields accurately.  Remarkably, this has
not caused any serious problems yet, but let's fix it.

We'll keep the "<>" notation for NULL, and use """" for empty string,
because that matches other notational choices already in use.
An actual input string of """" is converted to "\""" (this was true
already, apparently as a hangover from an ancient time when string
quoting was handled directly by pg_strtok).

CHAR fields also use "<>", but for '\0'.

Author: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://www.postgresql.org/message-id/flat/4159834.1657405226@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/8999f5ed3cd7d26be1121d912086d04d134d398b

Modified Files
--------------
src/backend/nodes/outfuncs.c  | 21 ++++++++++++++++++---
src/backend/nodes/readfuncs.c | 14 ++++++++++++--
2 files changed, 30 insertions(+), 5 deletions(-)


pgsql-committers by date:

Previous
From: Peter Eisentraut
Date:
Subject: pgsql: Translation updates
Next
From: Tom Lane
Date:
Subject: Re: pgsql: Fix write/read of empty string fields in Nodes.