Re: Encoding conversion: Use replacement character instead of failing query with "ERROR: character with byte sequence 0xd0 0xad in encoding "UTF8" has no equivalent in encoding LATIN1" ?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Christian Ramseyer <rc(at)networkz(dot)ch>
Cc: "pgsql-general(at)lists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Encoding conversion: Use replacement character instead of failing query with "ERROR: character with byte sequence 0xd0 0xad in encoding "UTF8" has no equivalent in encoding LATIN1" ?
Date: 2020-05-06 00:00:47
Message-ID: 1791.1588723247@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Christian Ramseyer <rc(at)networkz(dot)ch> writes:
> Can I somehow influence the client:UTF8->server:LATIN1 character set
> conversion so that instead of failing, it inserts an invalid codepoint
> character, the utf8 hex bytes as string, drops the character or
> something like that?

There's nothing built-in for that, but it seems like it wouldn't be
hard to modify the code if you wanted a quick hack to do this.

In general, the system nominally supports multiple conversion functions
per encoding pair, so you could imagine having an alternate conversion
that doesn't throw errors. Problem is that it's quite difficult to get
the system to actually *use* a non-default conversion for anything really
significant, like say client I/O. I don't know that anyone's thought
hard about how to improve that.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Virendra Kumar 2020-05-06 01:15:21 Wrong PostgreSQL Plan
Previous Message Tim Cross 2020-05-05 23:05:19 Re: Lock Postgres account after X number of failed logins?