Re: invalid UTF-8 via pl/perl
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: "David E. Wheeler" <david@kineticode.com>
Cc: Hannu Krosing <hannu@2ndquadrant.com>, pgsql-hackers@postgresql.org
Date: 2010-01-03T20:14:05Z
Lists: pgsql-hackers
David E. Wheeler wrote: >> Second, It produces errors like this: >> >> andrew=# select 'a' || invalid_utf_seq() || 'b'; >> ERROR: invalid byte sequence for encoding "UTF8": 0xd0 >> HINT: This error can also happen if the byte sequence does not >> match the encoding expected by the server, which is controlled by >> "client_encoding". >> CONTEXT: PL/Perl function "invalid_utf_seq" >> andrew=# >> >> >> That hint seems rather misleading. I'm not sure what we can do about it though. If we set the noError param on pg_verifymbstr() we would miss the error message that actually identified the bad data, so that doesn't seem like a good plan. >> > > I'm sure I'm just revealing my ignorance here, but how is the hint misleading? > > > The string that causes the trouble does not come from the client and has nothing to do with client_encoding. cheers andrew