Joe Conway wrote:
> David Wheeler wrote:
> > My understanding is that the nul character is legal in a byte sequence, 
> > but if it's not properly escaped, it'll be parsed as the end of the 
> > statement. Unfortunately, I think that it's a very tough problem to solve.
> 
> No question wrt '\0' bytes -- they would have to be escaped when casting from 
> bytea to text.
> 
> The harder issue is that there are apparently many other multiple byte 
> sequences that, while valid in an ASCII encoding, are not valid in one or more 
> multibyte encodings. See this thread:
> 
> http://archives.postgresql.org/pgsql-hackers/2002-04/msg00236.php
> 
> This is why currently all "non printable characters" are escaped (which I 
> think is all bytes > 127). Text on the other hand is already known to be valid 
> for a particular encoding, so it doesn't need escaping.
> 
> I'm not sure what happens when the backend encoding and client encoding don't 
> match -- I'd guess there is some probability of invalid byte sequences in that 
> case too.

I think there is some idea of changing the frontend/backend protocol to
prevent the need for escaping > \127 characters.  I believe it is
currently only required when the frontend/backend protocol have
different encodings.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

Reply via email to