Tom Lane wrote: > Tatsuo Ishii <[EMAIL PROTECTED]> writes: > >>PQescapebytea() is not multibyte aware and will produce bad multibyte >>character sequences. Example: >>I think 0x89 should be converted to '\\211' since 0x89 of 0x8950 is >>considered as "non printable characters". > > > Hmm, so essentially we'd have to convert all codes >= 0x80 to prevent > them from being mistaken for parts of multibyte sequences? Ugh, but > you're probably right. It looks to me like byteaout does the reverse > already. >
But the error comes from pg_verifymbstr. Since bytea has no encoding (it's just an array of bytes afterall), why does pg_verifymbstr get applied at all to bytea data? pg_verifymbstr is called by textin, bpcharin, and varcharin. Would it help to rewrite this as: INSERT INTO t1(bytea_col) VALUES('characters produced by PQescapebytea'::bytea); ? Joe ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])