Měl jsem podobný problém a vyřešil jsem to nastavením kódování na UTF8 pomocí \encoding UTF8
v klientovi před pokusem o INSERT INTO foo (SELECT * from bar WHERE x=y);
. Můj klient používal kódování WIN1252, ale databáze byla v UTF8, proto došlo k chybě.
Více informací je k dispozici na PostgreSQL wiki pod Podpora znakové sady (devel docs).