Skip site navigation (1) Skip section navigation (2)

Re: Backup messages displayed with wrong encoding

From: Alexander LAW <exclusion(at)gmail(dot)com>
To: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
Cc: pgadmin-support(at)postgresql(dot)org
Subject: Re: Backup messages displayed with wrong encoding
Date: 2012-03-06 14:30:57
Message-ID: 4F561FA1.2010007@gmail.com (view raw or flat)
Thread:
Lists: pgadmin-support
Hi,

I would like to clarify the issue with the encoding.

Now that we've got postgres localized (with russian messages), I can see 
that the encoding of the pg_dump output not changed depending on the 
database setting or the pg_dump option.
It seems that pg_dump changes only the encoding of a database objects 
names (see the screenshot).
So it looks like a pg_dump bug, not a feature.
Thanks for your feedback.

Best regards,
Alexander

14.12.2011 09:12, Alexander LAW пишет:
> Hello,
> I don't think that Win1251 encoding is more right than UTF-8. IMHO, a 
> program should understand what encoding is text in or let me choose 
> the encoding to read the text. If you would consider this behavior as 
> a problem (for the conditions described) you could solve it by 
> providing a combobox in the Messages tab, that lets me choose the 
> encoding of the log. But then I will choose there the same encoding as 
> I did before in the File Options tab or the encoding of the database. 
> So pgAdmin knows which encoding to use when reading the pg_admin 
> output stream.
> And about the need and possibility of conversion, I believe that the 
> every line of the log is converted anyway. Please look at 
> sysProcess:ReadStream, there you have strings read from input and 
> appended to txtMessages.
>
> str.Append(wxString::Format(wxT("%s"), wxString(buffer, 
> wxConvLibc).c_str()));
>
> As I understand, wxConvLibc here specifies that the input strings 
> always are in OS locale encoding, but IMO this should depend on the 
> backup encoding.
>
> Best regards
>
> 14.12.2011 00:20, Guillaume Lelarge пишет:
>> On Tue, 2011-12-13 at 08:15 +0400, Alexander LAW wrote:
>>> Hi,
>>> To make it clear I am posting two screenshots.
>>> ss_backup_win1251 shows valid table name (which is "Test" in Russian),
>>> but in ss_backup_utf8 you can see the name with wrong encoding.
>>>
>>> When I said "pgAdmin assumes", I meant that it converts pg_admin output
>>> stream to string as ANSI-encoded, but it's not always the case.
>>> In fact, the opposite is common on Windows with Russian locale (and
>>> non-ASCII object names), cause UTF-8 is a default encoding for a
>>> database, but locale encoding (SBCS) is Win1251, and when you do backup
>>> with a default encoding, you get an unreadable log.
>>>
>> pgAdmin simply displays what pg_dump gives him. If it's in the right
>> encoding, you'll see your tables' name correct. I'm not sure it would be
>> a good idea to grab every line and to convert them in whatever encoding
>> pgAdmin would like. If it's possible at all.
>>
>>
>


Attachment: backup_postgres_ru.png
Description: image/png (120.4 KB)

In response to

pgadmin-support by date

Next:From: Guillaume LelargeDate: 2012-03-06 20:47:56
Subject: Re: View create usage
Previous:From: Colin BeckinghamDate: 2012-03-06 14:19:36
Subject: View create usage

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group