pg_upgradecluster 9.5 -> 9.6 fails "Error: could not get clusterlocales" on Ubuntu 17.04 - Mailing list pgsql-admin

From Rob Hills
Subject pg_upgradecluster 9.5 -> 9.6 fails "Error: could not get clusterlocales" on Ubuntu 17.04
Date
Msg-id 1c03aa8c-529e-ecaf-550c-ee8a0db28073@medimorphosis.com.au
Whole thread Raw
Responses Re: pg_upgradecluster 9.5 -> 9.6 fails "Error: could not get clusterlocales" on Ubuntu 17.04  (Bruce Momjian <bruce@momjian.us>)
List pgsql-admin

Hi,

Today I upgraded from Ubuntu 16.04 LTS to 17.04 which forced a Postgresql upgrade from 9.5.10 to 9.6.6.

I followed the instructions specified during the Ubuntu upgrade:

sudo pg_dropcluster --stop 9.6 main
sudo pg_upgradecluster 9.5 main

The pg_dropcluster completed without any issues.  pg_upgradecluster failed with the following:

rob@robs-zenbook-3:~$ sudo pg_upgradecluster 9.5 main
Disabling connections to the old cluster during upgrade...
Restarting old cluster with restricted connections...
Redirecting start request to systemctl
psql: FATAL:  the database system is starting up
psql: FATAL:  the database system is starting up
Use of uninitialized value $out in pattern match (m//) at /usr/share/perl5/PgCommon.pm line 944.
psql: FATAL:  the database system is starting up
Use of uninitialized value $out in pattern match (m//) at /usr/share/perl5/PgCommon.pm line 950.
Use of uninitialized value $ctype in scalar chomp at /usr/share/perl5/PgCommon.pm line 953.
Use of uninitialized value $collate in scalar chomp at /usr/share/perl5/PgCommon.pm line 954.
Error: could not get cluster locales

In case it makes a difference, here's the output from my "locale" command:

rob@robs-zenbook-3:~$ locale
LANG=en_AU.UTF-8
LANGUAGE=en_AU:en
LC_CTYPE="en_AU.UTF-8"
LC_NUMERIC="en_AU.UTF-8"
LC_TIME="en_AU.UTF-8"
LC_COLLATE="en_AU.UTF-8"
LC_MONETARY="en_AU.UTF-8"
LC_MESSAGES="en_AU.UTF-8"
LC_PAPER="en_AU.UTF-8"
LC_NAME="en_AU.UTF-8"
LC_ADDRESS="en_AU.UTF-8"
LC_TELEPHONE="en_AU.UTF-8"
LC_MEASUREMENT="en_AU.UTF-8"
LC_IDENTIFICATION="en_AU.UTF-8"
LC_ALL=

I tried specifying a locale in the pg_upgradecluster command but got the same error as previously:

sudo pg_upgradecluster --locale=en_AU.UTF-8 9.5 main

I've found some threads discussing this specific issue, but none of them really identify the cause or provide any workaround.

Is there anything else I can do to try and work out what's causing the problem and get my cluster upgraded?

TIA,

--
Rob Hills
Waikiki, Western Australia

pgsql-admin by date:

Previous
From: Scott Whitney
Date:
Subject: Re: Database file compatibility between OS
Next
From: Günce Kaya
Date:
Subject: Log File Size