Re: EDB Installer initcluster script changes - review requested
Sandeep Thakkar <sandeep.thakkar@enterprisedb.com>
From: Sandeep Thakkar <sandeep.thakkar@enterprisedb.com>
To: Kashif Zeeshan <kashi.zeeshan@gmail.com>
Cc: Manika Singhal <manika.singhal@enterprisedb.com>,
pgsql-hackers@lists.postgresql.org, thomas.munro@gmail.com, noah@leadboat.com, Dave Page <dpage@pgadmin.org>
Date: 2025-01-29T12:59:21Z
Lists: pgsql-hackers
Hi On Wed, Jan 29, 2025 at 12:53 PM Kashif Zeeshan <kashi.zeeshan@gmail.com> wrote: > Hi Manika > > The bug is fixed with the shared package. > > Just to be sure, you're talking about the issue where EDB's installer was passing the locale with non-ascii characters and was failing, correct? > Thanks > Kashif Zeehsan > > On Tue, Jan 28, 2025 at 11:19 PM Manika Singhal < > manika.singhal@enterprisedb.com> wrote: > >> On Tue, Jan 28, 2025 at 3:12 PM Manika Singhal < >> manika.singhal@enterprisedb.com> wrote: >> >>> 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] >>> >>> 1. 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). >>> 2. Ensure that the ACls of the password file and its temporary >>> directory match those created by the existing initcluster.vbs >>> 3. 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: >>> [image: ss.png] >>> >>> *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 >>> >>> >>> >> Here is the link to the updated installer with a fix: >> [3] >> https://get.enterprisedb.com/test-installers/postgresql-17.2-0.0snapshot13015478730.1095.1.3b995e2.3-windows-x64.exe >> >> >>> >>> >> -------------------------------- >>> Thanks >>> Manika Singhal >>> >> -- Sandeep Thakkar