On Wed, May 6, 2020 at 04:01:44PM -0400, Chapman Flack wrote: > On 05/05/20 10:31, Bruce Momjian wrote: > > On Tue, May 5, 2020 at 09:20:39PM +0800, John Naylor wrote: > >> ... This patch is > >> about the server encoding, which formerly needed to be utf-8 for > >> non-ascii characters. (I think the client encoding doesn't matter as > >> long as ascii bytes are represented.) > >> > >> +<para> > >> +The UTF-8 characters must be available in the server encoding. > >> +</para> > >> > >> Same here, s/UTF-8/Unicode/. > > > > OK, new text is: > > > > Allow Unicode escapes, e.g., E'\u####', in clients that don't use UTF-8 > > encoding (Tom Lane) > > > > The Unicode characters must be available in the server encoding. > > > > I kept the "UTF-8 encoding" since that is the only Unicode encoding we > > support. > > My understanding also was that it matters little to this change what the > /client's/ encoding is. > > There used to be a limitation of the server's lexer that would reject > Unicode escapes whenever the /server's/ encoding wasn't UTF-8 (even > if the server's encoding contained the characters the escapes represent). > I think that limitation is what was removed. > > I don't think the client encoding comes into it at all. Sure, you could > just include the characters literally if they are in the client encoding, > but you might still choose to express them as escapes, and if you do they > get passed that way to the server for interpretation.
Ah, very good point. New text is: Allow Unicode escapes, e.g., E'\u####', in databases that do not use UTF-8 encoding (Tom Lane) The Unicode characters must be available in the database encoding. > I had assumed the patch applied to all of the forms U&'\####', > U&'\+######', E'\u####', and E'\U######' but I don't think I read > the patch to be sure of that. I am only using E'\u####' as an example. -- Bruce Momjian <br...@momjian.us> https://momjian.us EnterpriseDB https://enterprisedb.com + As you are, so once was I. As I am, so you will be. + + Ancient Roman grave inscription +