Thread: Re: EDB Installer initcluster script changes - review requested

Re: EDB Installer initcluster script changes - review requested

From
Vladlen Popolitov
Date:
Manika Singhal писал(а) 2025-01-28 16:42:
> Hi,

> "C:\Users\Administrator\AppData\Local\Temp\2\postgresql_installer_cd746730f8"
>> "C:\Program Files\PostgreSQL\17" "C:\Program
>> Files\PostgreSQL\17\data" 5432 "Turkish,Türkiye" 0

Hi!

  Your example has not-ascii characters in command line. It is not good 
practice.
If user switched on "Use UTF-8" flag in locale settings (it is user's 
right to do it
on own computer), it forces all commands
use UTF-8 characters in command line. "Türkiye" will be transformed to 
wrong text
by exec system call.

  "Use UTF-8" flag appeared in Windows 10. It helps correctly input and 
output
UTF-8 text (including correct behaviour of psql.exe utility under 
Windows).
As consequence, it consider as obsolete all programs that uses national
chars in command line or do not expect UTF-8 in command line.

> --------------------------------
> Thanks & Regards
> Manika Singhal
> EDB Pune
> 
> 
> 
> Links:
> ------
> [1] https://github.com/EnterpriseDB/edb-installers/issues/98
> [2] 
> https://www.postgresql.org/message-id/CA+hUKGL5mBN3JQuebAPbX0yxDNtpui04J+KSy2F7KBbhLGaJig@mail.gmail.com

-- 
Best regards,

Vladlen Popolitov.



Re: EDB Installer initcluster script changes - review requested

From
Manika Singhal
Date:

On Tue, Jan 28, 2025 at 11:52 PM Vladlen Popolitov <v.popolitov@postgrespro.ru> wrote:
Manika Singhal писал(а) 2025-01-28 16:42:
> Hi,

> "C:\Users\Administrator\AppData\Local\Temp\2\postgresql_installer_cd746730f8"
>> "C:\Program Files\PostgreSQL\17" "C:\Program
>> Files\PostgreSQL\17\data" 5432 "Turkish,Türkiye" 0

Hi!

  Your example has not-ascii characters in command line. It is not good
practice.
If user switched on "Use UTF-8" flag in locale settings (it is user's
right to do it
on own computer), it forces all commands
use UTF-8 characters in command line. "Türkiye" will be transformed to
wrong text
by exec system call.

  "Use UTF-8" flag appeared in Windows 10. It helps correctly input and
output
UTF-8 text (including correct behaviour of psql.exe utility under
Windows).
As consequence, it consider as obsolete all programs that uses national
chars in command line or do not expect UTF-8 in command line.

Hi Vladlen,

I appreciate your input -- thank you! 
I tested the installer with the "Use UTF-8" flag enabled in the locale settings of my VM, 
and it worked as expected in that setup as well.
The EDB installer provides a drop-down list of locales that include options with
non-ascii characters (as shown in the screenshot I shared in my initial email). 
From there our script picks the locale containing non-ascii characters and
converts it into BCP-47 code before using it for database initialization.
Based on this, the UTF-8 setting does not appear to affect the installer.
However, I would appreciate it if you could try the installation using the test-installer shared earlier, 
and let me know if you encounter any issues.

> --------------------------------
> Thanks
> Manika Singhal
>
>
>
> Links:
> ------
> [1] https://github.com/EnterpriseDB/edb-installers/issues/98
> [2]
> https://www.postgresql.org/message-id/CA+hUKGL5mBN3JQuebAPbX0yxDNtpui04J+KSy2F7KBbhLGaJig@mail.gmail.com

--
Best regards,

Vladlen Popolitov.