Re: furiously yours - Mailing list pgsql-bugs

From Rony Khoury
Subject Re: furiously yours
Date
Msg-id F66XFh9g9Q6Ccq2LGRJ0000bfaa@hotmail.com
Whole thread Raw
In response to furiously yours  ("Rony Khoury" <rkrk@hotmail.com>)
Responses Re: furiously yours  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: furiously yours  (Peter Eisentraut <peter_e@gmx.net>)
Re: furiously yours  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
List pgsql-bugs
Hello again,

If I understood right Postgresql depends on C language to do the sorting,
and C language depends on the settings of redhat for the sorting task.
Before going to RedHat with that I took the liberty to do the following test
and I would like to take your opinion about it first.

I installed a whole new redhat 7.1 version at home, with it came postgresql
7.0.3, I then downloaded the rpms for postgresql 7.1.1 from the internet and
upgraded to it. After doing all the proper installation procedure, I tried
the sorting on the new system and got the same results as at work.

Now I took the liberety to write a small program in C-language to see how
the sorting works and surprisingly enough I got the results desired that I
used to get on the old version. (ie the space is interpreted as < A).

Following is the code I wrote and the results I got. I belive this requires
your comment before going to redhat with that, I still think that there
might be some parameters missing somewhere to put things back in order.

Lamer I checked the parameters on my system and did not find LC_ALL nor
LC_COLL, but I found LANG=en_US. I do not know what these do, so your
guidance is appretiated in this respect if you think this is related to the
problem.

The C-Language program is:

main () {
  char tparr[10][500];
  char tpstring[500];
  int i,j;

  sprintf(tparr[0],"BOU ASSAF");
  sprintf(tparr[1],"BOUHAIDAR");
  sprintf(tparr[2],"BOU ZAHRA");

  for(i=0;i<3;i++) {
    for (j=0;j<3;j++) {
      if (strcmp(tparr[i],tparr[j]) == -1) {
        sprintf(tpstring,"%s",tparr[i]);
        sprintf(tparr[i],"%s",tparr[j]);
        sprintf(tparr[j],"%s",tpstring);
      }
    }
  }

  for (i=0;i<3;i++) {
    printf("\n---%s",tparr[i]);
  }
  printf("\n");
}


and the result is

---BOU ASSAF
---BOU ZAHRA
---BOUHAIDAR

while the postgresql continues to interpret this info as

---BOU ASSAF
---BOUHAIDAR
---BOU ZAHRA


not that these results I'm getting on the same system and is all a new
system from scratch thus can not be dependant on any previous versions.

Thanks,
Rony.
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: Apparent deadlock for simultaneous sequential scans
Next
From: Tom Lane
Date:
Subject: Re: furiously yours