Re: initdb problen

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: "Patches (PostgreSQL)" <pgsql-patches(at)postgresql(dot)org>, "Korea PostgreSQL Users' Group" <pgsql-kr(at)postgresql(dot)or(dot)kr>, Claudio Natoli <claudio(dot)natoli(at)memetrics(dot)com>, pgsql-hackers-win32(at)postgresql(dot)org
Subject: Re: initdb problen
Date: 2004-03-15 16:14:24
Message-ID: 200403151614.i2FGEOd09586@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers-win32 pgsql-patches


Patch applied. Thanks.

---------------------------------------------------------------------------

Andrew Dunstan wrote:
>
>
> I believe that the attached patch may solve this setlocale() problem,
> but I do not have a Windows box handy on which to test it. Can somebody
> who does please try and let us know the results?
>
> thanks
>
> andrew
>
>
>
> Andrew Dunstan wrote:
>
> >the answer is very probably here:
> >http://archives.postgresql.org/pgsql-hackers-win32/2003-10/msg00024.php
> >
> >I thought Bruce said he had this covered, but it hasn't been fixed. I
> >will prepare a patch in the next day or so if someone else doesn't beat
> >me to it.
> >
> >cheers
> >
> >andrew
> >
> >Korea PostgreSQL Users' Group wrote:
> >
> >
> >
> >>it works still problem.
> >>
> >>setlocale() function is not equivalent between unix and win32
> >>
> >>plz check.
> >>
> >>multibyte text is not sorted.
> >>
> >>
> >>----- Original Message -----
> >>From: "Claudio Natoli" <claudio(dot)natoli(at)memetrics(dot)com>
> >>To: "'Korea PostgreSQL Users' Group'" <pgsql-kr(at)postgresql(dot)or(dot)kr>; <pgsql-hackers-win32(at)postgresql(dot)org>
> >>Sent: Friday, March 12, 2004 5:04 PM
> >>Subject: RE: [pgsql-hackers-win32] initdb problen
> >>
> >>
> >>
> >>
> >>
> >>
> >>>What if you instead try:
> >>>
> >>>initdb --locale=C
> >>>
> >>>Looks like "--no-locale" is not "equivalent to --locale=C", at least under
> >>>win32.
> >>>
> >>>Cheers,
> >>>Claudio
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>---------------------------(end of broadcast)---------------------------
> >>TIP 3: if posting/reading through Usenet, please send an appropriate
> >> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> >> message can get through to the mailing list cleanly
> >>
> >>
> >>
> >>
> >>
> >
> >
> >---------------------------(end of broadcast)---------------------------
> >TIP 3: if posting/reading through Usenet, please send an appropriate
> > subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> > message can get through to the mailing list cleanly
> >
> >
> >
>

> Index: src/backend/main/main.c
> ===================================================================
> RCS file: /projects/cvsroot/pgsql-server/src/backend/main/main.c,v
> retrieving revision 1.75
> diff -c -r1.75 main.c
> *** src/backend/main/main.c 5 Mar 2004 01:11:04 -0000 1.75
> --- src/backend/main/main.c 12 Mar 2004 16:27:13 -0000
> ***************
> *** 74,79 ****
> --- 74,83 ----
> #endif /* NOPRINTADE */
> #endif /* __alpha */
>
> + #ifdef WIN32
> + char *env_locale;
> + #endif
> +
> #if defined(NOFIXADE) || defined(NOPRINTADE)
>
> #if defined(ultrix4)
> ***************
> *** 143,150 ****
> --- 147,176 ----
> * set later during GUC option processing, but we set it here to allow
> * startup error messages to be localized.
> */
> +
> + #ifdef WIN32
> + /*
> + * Windows uses codepages rather than the environment, so we work around
> + * that by querying the environment explicitly first for LC_COLLATE
> + * and LC_CTYPE. We have to do this because initdb passes those values
> + * in the environment. If there is nothing there we fall back on the
> + * codepage.
> + */
> +
> + if ((env_locale = getenv("LC_COLLATE")) != NULL)
> + setlocale(LC_COLLATE,env_locale);
> + else
> + setlocale(LC_COLLATE, "");
> +
> + if ((env_locale = getenv("LC_CTYPE")) != NULL)
> + setlocale(LC_CTYPE,env_locale);
> + else
> + setlocale(LC_CTYPE, "");
> + #else
> setlocale(LC_COLLATE, "");
> setlocale(LC_CTYPE, "");
> + #endif
> +
> #ifdef LC_MESSAGES
> setlocale(LC_MESSAGES, "");
> #endif

>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faqs/FAQ.html

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

In response to

Browse pgsql-hackers-win32 by date

  From Date Subject
Next Message Korea PostgreSQL Users' Group 2004-03-15 19:02:17 xlog.c timezone name size
Previous Message Andrew Dunstan 2004-03-15 10:43:30 default psql to localhost on platforms without unix domain sockets

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2004-03-15 16:17:34 Re: pg_autovacuum patch for 7.4.2 and HEAD
Previous Message Tom Lane 2004-03-15 16:10:07 Re: ANALYZE patch for review