Re: Windows installation problem at post-install step

From: Sandeep Thakkar <sandeep(dot)thakkar(at)enterprisedb(dot)com>
To: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
Cc: Ertan Küçükoglu <ertan(dot)kucukoglu(at)gmail(dot)com>, Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org, Manika Singhal <manika(dot)singhal(at)enterprisedb(dot)com>
Subject: Re: Windows installation problem at post-install step
Date: 2024-08-06 10:36:51
Message-ID: CANFyU95vLi3K1FTZO82kYTAGX3B7TPkbWe8LAecaQtndH+EC9Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, Aug 6, 2024 at 10:57 AM Thomas Munro <thomas(dot)munro(at)gmail(dot)com> wrote:

> On Mon, Aug 5, 2024 at 8:50 PM Sandeep Thakkar
> <sandeep(dot)thakkar(at)enterprisedb(dot)com> wrote:
> > This issue is seen only on v16 and not the back branches (tested on 15
> and 14) and also confirmed by @Ertan Küçükoglu at
> https://github.com/EnterpriseDB/edb-installers/issues/127#issuecomment-2268371442
>
> Does that mean you can reproduce the problem with initdb.exe directly
> in a shell? That is, remove the EDB installer from the picture and
> compare v15 and v16 with the exact command line options that
> initcluster.vbs is using, or perhaps just:
>
> initdb.exe --locale="Turkish,Türkiye" --encoding=UTF-8 -D pgdata
>
> yes, here is the output:

> c:\Program Files\PostgreSQL\16\bin>initdb.exe --encoding=UTF-8 -A
> scram-sha-256 -U postgres -D "c:\Program Files\PostgreSQL\16\data" --locale
> "Turkish,Türkiye" -W
> The files belonging to this database system will be owned by user
> "sandeep".
> This user must also own the server process.
>
> The database cluster will be initialized with locale
> "Turkish_Türkiye.1254".
> The default text search configuration will be set to "turkish".
>
> Data page checksums are disabled.
>
> Enter new superuser password:
> Enter it again:
>
> fixing permissions on existing directory c:/Program
> Files/PostgreSQL/16/data ... ok
> creating subdirectories ... ok
> selecting dynamic shared memory implementation ... windows
> selecting default max_connections ... 100
> selecting default shared_buffers ... 128MB
> selecting default time zone ... UTC
> creating configuration files ... ok
> running bootstrap script ... ok
> performing post-bootstrap initialization ... child process was terminated
> by exception 0xC0000409
> initdb: removing contents of data directory "c:/Program
> Files/PostgreSQL/16/data"
>

> . o O (Why does that locale name have a comma?) If v15 works and v16
> breaks, perhaps you could try comparing the output with the attached
> patch? It will give a hex dump of the contents of the locale name at
> various points in the program, to see if/where it was corrupted, which
> might also be a bit less confusing than looking at script output via
> email (I don't even know how many onion layers of transcoding are
> involved...)
>

here is the output:
v15:

c:\Program Files\PostgreSQL\15\bin>initdb.exe --encoding=UTF-8 -A
> scram-sha-256 -U postgres -D "c:\Program Files\PostgreSQL\15\data" --locale
> "Turkish,Türkiye" -W
> XXX debug raw: getopt optarg = "Turkish,Türkiye"
> XXX debug hex: getopt optarg = { 54 75 72 6b 69 73 68 2c 54 fc 72 6b 69
> 79 65 }
> XXX debug txt: getopt optarg = { T u r k i s h , T ? r k i y
> e }
> XXX debug raw: getopt optarg = "Turkish,Türkiye"
> XXX debug hex: getopt optarg = { 54 75 72 6b 69 73 68 2c 54 fc 72 6b 69
> 79 65 }
> XXX debug txt: getopt optarg = { T u r k i s h , T ? r k i y
> e }
> The files belonging to this database system will be owned by user
> "sandeep".
> This user must also own the server process.
>
> XXX debug raw: setlocales lc_ctype = "Turkish,Türkiye"
> XXX debug hex: setlocales lc_ctype = { 54 75 72 6b 69 73 68 2c 54 fc 72
> 6b 69 79 65 }
> XXX debug txt: setlocales lc_ctype = { T u r k i s h , T ? r k
> i y e }
> XXX debug raw: setlocales cannonname = "Turkish_Türkiye.1254"
> XXX debug hex: setlocales cannonname = { 54 75 72 6b 69 73 68 5f 54 fc 72
> 6b 69 79 65 2e 31 32 35 34 }
> XXX debug txt: setlocales cannonname = { T u r k i s h _ T ? r
> k i y e . 1 2 5 4 }
> XXX debug raw: setup_locale_encoding = "Turkish_Türkiye.1254"
> XXX debug hex: setup_locale_encoding = { 54 75 72 6b 69 73 68 5f 54 fc 72
> 6b 69 79 65 2e 31 32 35 34 }
> XXX debug txt: setup_locale_encoding = { T u r k i s h _ T ? r
> k i y e . 1 2 5 4 }
> The database cluster will be initialized with locale
> "Turkish_Türkiye.1254".
> The default text search configuration will be set to "turkish".
>
> Data page checksums are disabled.
>
> Enter new superuser password:
> Enter it again:
>
> fixing permissions on existing directory c:/Program
> Files/PostgreSQL/15/data ... ok
> creating subdirectories ... ok
> selecting dynamic shared memory implementation ... windows
> selecting default max_connections ... 100
> selecting default shared_buffers ... 128MB
> selecting default time zone ... UTC
> creating configuration files ... ok
> running bootstrap script ... ok
> performing post-bootstrap initialization ... ok
> syncing data to disk ... ok
>
> Success. You can now start the database server using:
>
> pg_ctl -D ^"c^:^\Program^ Files^\PostgreSQL^\15^\data^" -l logfile
> start
>

v16:

> C:\Program Files\PostgreSQL\16\bin>initdb.exe --encoding=UTF-8 -A
> scram-sha-256 -U postgres -D "c:\Program Files\PostgreSQL\16\data" --locale
> "Turkish,Türkiye" -W XXX debug raw: getopt optarg = "Turkish,Türkiye" XXX
> debug hex: getopt optarg = { 54 75 72 6b 69 73 68 2c 54 fc 72 6b 69 79 65 }
> XXX debug txt: getopt optarg = { T u r k i s h , T ? r k i y e } XXX debug
> raw: getopt optarg = "Turkish,Türkiye" XXX debug hex: getopt optarg = { 54
> 75 72 6b 69 73 68 2c 54 fc 72 6b 69 79 65 } XXX debug txt: getopt optarg =
> { T u r k i s h , T ? r k i y e } The files belonging to this database
> system will be owned by user "Administrator". This user must also own the
> server process. XXX debug raw: setlocales lc_ctype = "Turkish,Türkiye" XXX
> debug hex: setlocales lc_ctype = { 54 75 72 6b 69 73 68 2c 54 fc 72 6b 69
> 79 65 } XXX debug txt: setlocales lc_ctype = { T u r k i s h , T ? r k i y
> e } XXX debug raw: setlocales cannonname = "Turkish_Türkiye.1254" XXX debug
> hex: setlocales cannonname = { 54 75 72 6b 69 73 68 5f 54 fc 72 6b 69 79 65
> 2e 31 32 35 34 } XXX debug txt: setlocales cannonname = { T u r k i s h _ T
> ? r k i y e . 1 2 5 4 } XXX debug raw: setup_locale_encoding =
> "Turkish_Türkiye.1254" XXX debug hex: setup_locale_encoding = { 54 75 72 6b
> 69 73 68 5f 54 fc 72 6b 69 79 65 2e 31 32 35 34 } XXX debug txt:
> setup_locale_encoding = { T u r k i s h _ T ? r k i y e . 1 2 5 4 } The
> database cluster will be initialized with locale "Turkish_Türkiye.1254".
> The default text search configuration will be set to "turkish". Data page
> checksums are disabled. Enter new superuser password: Enter it again:
> fixing permissions on existing directory c:/Program
> Files/PostgreSQL/16/data ... ok creating subdirectories ... ok selecting
> dynamic shared memory implementation ... windows selecting default
> max_connections ... 100 selecting default shared_buffers ... 128MB
> selecting default time zone ... UTC creating configuration files ... ok
> running bootstrap script ... ok performing post-bootstrap initialization
> ... child process was terminated by exception 0xC0000409 initdb: removing
> contents of data directory "c:/Program Files/PostgreSQL/16/data"
>

--
Sandeep Thakkar

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Sandeep Thakkar 2024-08-06 10:38:37 Re: Windows installation problem at post-install step
Previous Message Dominique Devienne 2024-08-06 08:53:32 Re: Building v17 Beta2 on Windows