EDB Installer initcluster script changes - review requested

From: Manika Singhal <manika(dot)singhal(at)enterprisedb(dot)com>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Cc: Sandeep Thakkar <sandeep(dot)thakkar(at)enterprisedb(dot)com>, Dave Page <dave(dot)page(at)enterprisedb(dot)com>, thomas(dot)munro(at)gmail(dot)com, noah(at)leadboat(dot)com
Subject: EDB Installer initcluster script changes - review requested
Date: 2025-01-28 09:42:36
Message-ID: 5A1E1DB5-922E-4DCB-B1B4-F41779116A10@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

As a part of rewriting the legacy initcluster.vbs [1], which EDB's graphical installer uses to initialize the database cluster and set the proper ACL's, into Powershell script initcluster.ps1, I have also attempted to fix the locale issue (about non-ASCII characters) being discussed at [2].

Here are the test cases that I tried with the generated test installer for PG17 [3]
Ensure that the ACLs of the data directories generated by the existing initcluster.vbs and the new initcluster.ps1 match, both in the default installation directory (C:\Program Files) and in non-default location (outside C:\Program Files).
Ensure that the ACls of the password file and its temporary directory match those created by the existing initcluster.vbs
Ensure that the ASCII and non-ASCII locales passed during the GUI based installation are converted into BCP-47 names before being passed to the initdb.exe
a. example: I have selected locale "Turkish, Türkiye" at the time of installation, please refer to the screenshot below:

initcluster.ps1 converted it into its BCP-47 name, i.e. "tr-TR" and passed it to initdb.exe, please refer below installation log lines:

> Executing C:\Windows\System32\cmd.exe /c powershell.exe -ExecutionPolicy Bypass -File "C:\Program Files\PostgreSQL\17\installer\server\initcluster.ps1" "NT AUTHORITY\NetworkService" "postgres" "****" "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
> Script exit code: 0
> Script output:
> <some script output lines>
> The database cluster will be initialized with locale "tr-TR".
> The default text search configuration will be set to "turkish".

Can I request you all to please review the pull request at https://github.com/EnterpriseDB/edb-installers/pull/227?

Thanks!

[1] https://github.com/EnterpriseDB/edb-installers/issues/98
[2] https://www.postgresql.org/message-id/CA+hUKGL5mBN3JQuebAPbX0yxDNtpui04J+KSy2F7KBbhLGaJig@mail.gmail.com
[3] https://get.enterprisedb.com/test-installers/postgresql-17.2-0.0snapshot12949906433.1091.1.3b995e2.3-windows-x64.exe

--------------------------------
Thanks & Regards
Manika Singhal
EDB Pune

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrey Borodin 2025-01-28 09:51:29 Re: Timeline issue if StartupXLOG() is interrupted right before end-of-recovery record is done
Previous Message Shlok Kyal 2025-01-28 09:40:48 Re: Virtual generated columns