From: Peter Seiderer <ps.report@gmx.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/2] package/postgresql: explicitly use en_US.UTF-8 locale for initdb
Date: Mon, 25 Nov 2019 09:56:53 +0100 [thread overview]
Message-ID: <20191125095653.108d4925@gmx.net> (raw)
In-Reply-To: <20191121101538.6788-1-p.debruijn@unilogic.nl>
Hello Pascal,
On Thu, 21 Nov 2019 11:15:38 +0100, Pascal de Bruijn <p.debruijn@unilogic.nl> wrote:
> From: Pascal de Bruijn <pmjdebruijn@pcode.nl>
>
> postgres[290]: initdb: error: invalid locale settings; check LANG and LC_* environment variables
> postgres[290]: pg_ctl: database system initialization failed
Thanks for the patch, but tested with raspberrypi3_64_defconfig (and changed to
glibc), my output is:
[...]
The database cluster will be initialized with locale "C".
The default database encoding has accordingly been set to "SQL_ASCII".
The default text search configuration will be set to "english".
[...]
performing post-bootstrap initialization ... sh: locale: not found
1970-01-01 00:00:16.233 UTC [206] WARNING: no usable system locales were found
ok
[...]
Success. You can now start the database server using:
[...]
No need for an (additional) locale with my setup (and the warning is, after
a quick look at the source code postgresql-12.1/src/backend/commands/collationcmds.c,
about the missing locale command on the target, nothing your patch can fix)...
Can you provide your failing defconfig file?
Regards,
Peter
>
> Signed-off-by: Pascal de Bruijn <p.debruijn@unilogic.nl>
> ---
> package/postgresql/Config.in | 2 ++
> package/postgresql/S50postgresql | 2 +-
> package/postgresql/postgresql.service | 2 +-
> 3 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/package/postgresql/Config.in b/package/postgresql/Config.in
> index e548d3c..e912249 100644
> --- a/package/postgresql/Config.in./host/aarch64-buildroot-linux-gnu/sysroot/usr/bin/locale
> +++ b/package/postgresql/Config.in
> @@ -17,6 +17,8 @@ config BR2_PACKAGE_POSTGRESQL
> Enable the zlib package to gain builtin compression for
> archives with pg_dump and pg_restore.
>
> + NOTE: PostgreSQL needs a working en_US.UTF-8 locale (BR2_GENERATE_LOCALE)
> +
> http://www.postgresql.org
>
> comment "postgresql needs a toolchain w/ dynamic library, wchar"
> diff --git a/package/postgresql/S50postgresql b/package/postgresql/S50postgresql
> index 1ece4fc..3c0c520 100644
> --- a/package/postgresql/S50postgresql
> +++ b/package/postgresql/S50postgresql
> @@ -7,7 +7,7 @@ umask 077
>
> if [ ! -f /var/lib/pgsql/PG_VERSION ]; then
> echo "Initializing postgresql data base..."
> - su - postgres -c '/usr/bin/pg_ctl initdb -D /var/lib/pgsql'
> + su - postgres -c '/usr/bin/pg_ctl initdb -D /var/lib/pgsql -o --locale=en_US.UTF-8'
> echo "done"
> fi
>
> diff --git a/package/postgresql/postgresql.service b/package/postgresql/postgresql.service
> index 53e6f84..4bbe742 100644
> --- a/package/postgresql/postgresql.service
> +++ b/package/postgresql/postgresql.service
> @@ -17,7 +17,7 @@ StandardError=syslog
> SyslogIdentifier=postgres
> PIDFile=/var/lib/pgsql/postmaster.pid
>
> -ExecStartPre=/bin/sh -c "if [ ! -f /var/lib/pgsql/PG_VERSION ]; then /usr/bin/pg_ctl initdb -D /var/lib/pgsql; fi"
> +ExecStartPre=/bin/sh -c "if [ ! -f /var/lib/pgsql/PG_VERSION ]; then /usr/bin/pg_ctl initdb -D /var/lib/pgsql -o --locale=en_US.UTF-8; fi"
> ExecStart=/usr/bin/postgres -D /var/lib/pgsql
> ExecReload=/usr/bin/kill -HUP $MAINPID
> KillMode=mixed
next prev parent reply other threads:[~2019-11-25 8:56 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-21 10:15 [Buildroot] [PATCH 1/2] package/postgresql: explicitly use en_US.UTF-8 locale for initdb Pascal de Bruijn
2019-11-25 8:56 ` Peter Seiderer [this message]
2019-12-25 22:32 ` Thomas Petazzoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191125095653.108d4925@gmx.net \
--to=ps.report@gmx.net \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.