Este é um problema conhecido com o protocolo PostgreSQL versão 3, onde o cliente não conhece a codificação para decodificar mensagens de erro enviadas pelo servidor no início do handshake do protocolo.
Isso será corrigido quando o protocolo da versão 4 for produzido, mas ainda está longe.
Enquanto isso, a única solução real é garantir que a codificação padrão do cliente seja compatível com a do servidor. A maneira mais fácil de fazer isso é definir
LC_MESSAGES
para algo como en_US.UTF-8
, talvez através do lc_messages
opção em postgresql.conf
.