Re: The "char" type versus non-ASCII characters

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, Chapman Flack <chap(at)anastigmatix(dot)net>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: The "char" type versus non-ASCII characters
Date: 2022-07-31 22:25:24
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

I wrote:
> This came up again today [1], so here's a concrete proposal.
> Let's use \ooo for high-bit-set chars, but keep backslash as just
> backslash (so it's only semi-compatible with bytea).

Hearing no howls of protest, here's a fleshed out, potentially-committable
version. I added some regression test coverage for the modified code.
(I also fixed an astonishingly obsolete comment about what the regular
char type does.) I looked at the SGML docs too, but I don't think there
is anything to change there. The docs say "single-byte internal type"
and are silent about "char" beyond that. I think that's exactly where
we want to be: any more detail would encourage people to use the type,
which we don't really want. Possibly we could change the text to
"single-byte internal type, meant to hold ASCII characters" but I'm
not sure that's better.

The next question is what to do with this. I propose to commit it into
HEAD and v15 before next week's beta3 release. If we don't get a lot
of pushback, we could consider back-patching further for the November
releases; but I'm hesitant to shove something like this into stable
branches with only a week's notice.

regards, tom lane

Attachment Content-Type Size
change-char-type-io-format-2.patch text/x-diff 8.8 KB

In response to


Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2022-07-31 23:27:37 Re: ci: update to freebsd 13.1 / remove minor versions from image names
Previous Message Thomas Munro 2022-07-31 22:07:32 Re: ci: update to freebsd 13.1 / remove minor versions from image names