Forum OpenACS Development: Response to OpenACS 4 fails to install

Posted by Yon Derek on
Thanks, that was indeed a locale problem.

However, in my case solving it wasn't as easy as changing /etc/sysconfig/i18n i.e. just changing it and re-installing postgresql-server didn't work. Databases were still created in "en_US" locale (even though /var/lib/pgsql/initdb.i18n file, presumably created by install, had "C" in it). LANG variable for all my users is still "en_US" despite /etc/sysconfig/i18n being "C" (even after reboot).

To be honest, I don't really know how I solved it. I did all that Jonathan suggested (which in itself was not enough), I switched to user postgres, removed /var/lib/pgsql/data directory, forced LANG to be C (export LANG="C"), and did initdb. Only after that my db was created with locale C (as verified by pg_controldata utility which is in contrib directory of PostgreSQL source distro).

So question: anyone familiar with RH locale business, why LANG is set to "en_US" even though i18n has "LANG=C" in it?

We (as in OpenACS) really need a install-time check for that and a good instructions on how to fix it/check for it. I don't really know which one of the things I did really forced PostgreSQL to create db with the lang I want. Also there is no good/easy way to check for that (except mentioned pg_controldata util which you usually need to compile yourself and run as root or postgres user).