I have two postgres servers, one on linux (fedora core 5), one on windows, both are version 8.1.4.

Both databases are initialized with locale Croatian and win1250 encoding.

running pg_controldata on windows returns this

LC_COLLATE:          Croatian_Croatia.1250
LC_CTYPE:            Croatian_Croatia.1250

the same command on linux returns this

LC_COLLATE:                    hr_HR
LC_CTYPE:                      hr_HR

which is the same, I suppose.

the sample databases are both initialized the same way

CREATE DATABASE sample
 WITH OWNER = postgres
      ENCODING = 'WIN1250'
      TABLESPACE = pg_default;


both databases have the same sample table

CREATE TABLE sample
(
 some_text char(13) NOT NULL
);


when I execute a query 'SELECT SOME_TEXT FROM SAMPLE ORDER BY SOME_TEXT' I get different sort order on these two servers.

On the left side is windows server sort order, and on the right side is linux server sort order. all values are left padded with spaces.

Postgres windows  Postgres linux
0 0
              1             000
              2   0000000000000
              3               1
              4              11
              5              12
              6             123
              7             125
              8              13
              9              14
              a              15
              A               2
              b         2343255
              b          234455
              B             243
              c              25
              C               3
              d         31TA001
              e         32NU280
              f              35
              g               4
              z              45
             11               5
             12              55
             13           56455
             14               6
             15              65
             25               7
             35              75
             45               8
             55              85
             65               9
             75               a
             85               A
             aa              aa
             ab             aaa
             aB             aab
             Ab              ab
             AB              aB
             ba              Ab
             bb              AB
             cc             aba
            000             abA
            123             aBa
            125             AbA
            243             ABA
            aaa             abb
            aab             abb
            aba             abc
            abA             abc
            aBa             abC
            AbA             Abc
            ABA             ABC
            abb           abcde
            abb             acc
            abc               b
            abc               b
            abC               B
            Abc              ba
            ABC             baa
            acc             bab
            baa              bb
            bab             bba
            bba             bbb
            bbb             bca
            bca               c
            zzz               C
            zzz              cc
          56455               d
          abcde               e
         234455               f
        2343255               g
        31TA001               z
        32NU280             zzz
  0000000000000             zzz
  zzzzzzzzzzzzz   zzzzzzzzzzzzz

The only thing I can think of is that somehow these databases weren't initialized in the same way, if so what is the difference?

Tnx in advance

Dragan

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Reply via email to