Thread: BUG #4038: Problem with locale changing by initdb

BUG #4038: Problem with locale changing by initdb

From
"Alexey"
Date:
The following bug has been logged online:

Bug reference:      4038
Logged by:          Alexey
Email address:      _Kpot_@sibmail.com
PostgreSQL version: 8.2.5
Operating system:   Windows 2003
Description:        Problem with locale changing by initdb
Details:

I want to change locale of my database to 'Russian_Russia.1251'. I executed
command, according to documentation:

initdb -D E:\Program Files\PostgreSQL\8.2\data --locale=Russian_Russia.1251

Then I saw message:

The files belonging to this database system will be owned by user "Alexey".
This user must also own the server process.
The database cluster will be initialized with locale Russian_Russia.1251.
initdb: directory "Files/PostgreSQL/8.2/data" exists but is not empty
If you want to create a new database system, either remove or empty
the directory "Files/PostgreSQL/8.2/data" or run initdb
with an argument other than "Files/PostgreSQL/8.2/data".


After I saw values of parameters lc_collate and lc_ctype, and they were 'C',
but not 'Russian_Russia.1251'

Did I somethin wrong?

Re: BUG #4038: Problem with locale changing by initdb

From
"Gurjeet Singh"
Date:
On Sat, Mar 15, 2008 at 6:06 PM, Alexey <_Kpot_@sibmail.com> wrote:

>
> The following bug has been logged online:
>
> Bug reference:      4038
> Logged by:          Alexey
> Email address:      _Kpot_@sibmail.com
> PostgreSQL version: 8.2.5
> Operating system:   Windows 2003
> Description:        Problem with locale changing by initdb
> Details:
>
> I want to change locale of my database to 'Russian_Russia.1251'. I
> executed
> command, according to documentation:
>
> initdb -D E:\Program Files\PostgreSQL\8.2\data
> --locale=3DRussian_Russia.1251
>
> Then I saw message:
>
> The files belonging to this database system will be owned by user
> "Alexey".
> This user must also own the server process.
> The database cluster will be initialized with locale Russian_Russia.1251.


<error_output>


> initdb: directory "Files/PostgreSQL/8.2/data" exists but is not empty
> If you want to create a new database system, either remove or empty
> the directory "Files/PostgreSQL/8.2/data" or run initdb
> with an argument other than "Files/PostgreSQL/8.2/data".


</error_output>

The above error messages show that you tried to create a database in a
directory that was not empty.


>
>
> After I saw values of parameters lc_collate and lc_ctype, and they were
> 'C',
> but not 'Russian_Russia.1251'
>
> Did I somethin wrong?
>

You seem to assume that the above command succeeded. Your INITDB did not
succeed; the locales you are seeing are from the preexisting database.
Either create a new directory for the new database, or empty the older
directory.

One more (important) thing. You should use quotes for the -D parameter,
since your directory path has space, like so:

initdb -D "E:\Program Files\PostgreSQL\8.2\data"
--locale=3DRussian_Russia.1251

HTH

Best regards,
--=20
gurjeet[.singh]@EnterpriseDB.com
singh.gurjeet@{ gmail | hotmail | indiatimes | yahoo }.com

EnterpriseDB http://www.enterprisedb.com

17=B0 29' 34.37"N, 78=B0 30' 59.76"E - Hyderabad *
18=B0 32' 57.25"N, 73=B0 56' 25.42"E - Pune
37=B0 47' 19.72"N, 122=B0 24' 1.69" W - San Francisco

http://gurjeet.frihost.net

Mail sent from my BlackLaptop device