@@ -41,7 +41,7 @@ LOG_FILE="/var/log/pg-upgrade-initiate.log"
41
41
42
42
POST_UPGRADE_EXTENSION_SCRIPT=" /tmp/pg_upgrade/pg_upgrade_extensions.sql"
43
43
POST_UPGRADE_POSTGRES_PERMS_SCRIPT=" /tmp/pg_upgrade/pg_upgrade_postgres_perms.sql"
44
- OLD_PGVERSION=$( run_sql -A -t -c " SHOW server_version; " )
44
+ OLD_PGVERSION=$( pg_config --version | sed ' s/PostgreSQL \([0-9]*\.[0-9]*\).*/\1/ ' )
45
45
46
46
# Skip locale settings if both versions are PostgreSQL 17+ or 17-orioledb
47
47
if ! [[ (( "$OLD_PGVERSION " =~ ^17 .* || "$OLD_PGVERSION " == "17 - orioledb") && ("$PGVERSION " =~ ^17 .* || "$PGVERSION " == "17 - orioledb")) ]]; then
@@ -398,7 +398,11 @@ function initiate_upgrade {
398
398
rm -rf " ${PGDATANEW:? } /"
399
399
400
400
if [ " $IS_NIX_UPGRADE " = " true" ]; then
401
- LC_ALL=en_US.UTF-8 LC_CTYPE=$SERVER_LC_CTYPE LC_COLLATE=$SERVER_LC_COLLATE LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -c " . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh && $PGBINNEW /initdb --encoding=$SERVER_ENCODING --lc-collate=$SERVER_LC_COLLATE --lc-ctype=$SERVER_LC_CTYPE -L $PGSHARENEW -D $PGDATANEW / --username=supabase_admin" -s " $SHELL " postgres
401
+ if [[ " $PGVERSION " =~ ^17.* || " $PGVERSION " == " 17-orioledb" ]]; then
402
+ LC_ALL=en_US.UTF-8 LC_CTYPE=$SERVER_LC_CTYPE LC_COLLATE=$SERVER_LC_COLLATE LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -c " . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh && $PGBINNEW /initdb --encoding=$SERVER_ENCODING --locale-provider=icu --icu-locale=en_US.UTF-8 -L $PGSHARENEW -D $PGDATANEW / --username=supabase_admin" -s " $SHELL " postgres
403
+ else
404
+ LC_ALL=en_US.UTF-8 LC_CTYPE=$SERVER_LC_CTYPE LC_COLLATE=$SERVER_LC_COLLATE LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -c " . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh && $PGBINNEW /initdb --encoding=$SERVER_ENCODING --lc-collate=$SERVER_LC_COLLATE --lc-ctype=$SERVER_LC_CTYPE -L $PGSHARENEW -D $PGDATANEW / --username=supabase_admin" -s " $SHELL " postgres
405
+ fi
402
406
else
403
407
su -c " $PGBINNEW /initdb -L $PGSHARENEW -D $PGDATANEW / --username=supabase_admin" -s " $SHELL " postgres
404
408
fi
431
435
if [ " $IS_NIX_BASED_SYSTEM " = " true" ]; then
432
436
UPGRADE_COMMAND=" . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh && $UPGRADE_COMMAND "
433
437
fi
434
- GRN_PLUGINS_DIR=/var/lib/postgresql/.nix-profile/lib/groonga/plugins LC_ALL=en_US.UTF-8 LC_CTYPE=$SERVER_LC_CTYPE LC_COLLATE=$SERVER_LC_COLLATE LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -pc " $UPGRADE_COMMAND --check" -s " $SHELL " postgres
438
+
439
+ if [[ " $PGVERSION " =~ ^17.* || " $PGVERSION " == " 17-orioledb" ]]; then
440
+ GRN_PLUGINS_DIR=/var/lib/postgresql/.nix-profile/lib/groonga/plugins LC_ALL=en_US.UTF-8 LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -pc " $UPGRADE_COMMAND --check" -s " $SHELL " postgres
441
+ else
442
+ GRN_PLUGINS_DIR=/var/lib/postgresql/.nix-profile/lib/groonga/plugins LC_ALL=en_US.UTF-8 LC_CTYPE=$SERVER_LC_CTYPE LC_COLLATE=$SERVER_LC_COLLATE LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -pc " $UPGRADE_COMMAND --check" -s " $SHELL " postgres
443
+ fi
435
444
436
445
echo " 10. Stopping postgres; running pg_upgrade"
437
446
# Extra work to ensure postgres is actually stopped
447
456
CI_stop_postgres
448
457
fi
449
458
450
- GRN_PLUGINS_DIR=/var/lib/postgresql/.nix-profile/lib/groonga/plugins LC_ALL=en_US.UTF-8 LC_CTYPE=$SERVER_LC_CTYPE LC_COLLATE=$SERVER_LC_COLLATE LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -pc " $UPGRADE_COMMAND " -s " $SHELL " postgres
459
+ if [[ " $PGVERSION " =~ ^17.* || " $PGVERSION " == " 17-orioledb" ]]; then
460
+ GRN_PLUGINS_DIR=/var/lib/postgresql/.nix-profile/lib/groonga/plugins LC_ALL=en_US.UTF-8 LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -pc " $UPGRADE_COMMAND " -s " $SHELL " postgres
461
+ else
462
+ GRN_PLUGINS_DIR=/var/lib/postgresql/.nix-profile/lib/groonga/plugins LC_ALL=en_US.UTF-8 LC_CTYPE=$SERVER_LC_CTYPE LC_COLLATE=$SERVER_LC_COLLATE LANGUAGE=en_US.UTF-8 LANG=en_US.UTF-8 LOCALE_ARCHIVE=/usr/lib/locale/locale-archive su -pc " $UPGRADE_COMMAND " -s " $SHELL " postgres
463
+ fi
451
464
452
- # copying custom configurations
453
465
echo " 11. Copying custom configurations"
454
466
mkdir -p " $MOUNT_POINT /conf"
455
467
cp -R /etc/postgresql-custom/* " $MOUNT_POINT /conf/"
0 commit comments