Thread: Locale support on Mac OS X
Hi, I'm trying to enable italian locale support on a Mac OS X host. I run the initdb command with the following parameters (among others): --encoding=UNICODE --locale=it_IT.UTF-8 then I created a new test database test_locale=# \d test_sort Table "public.test_sort" Column | Type | Modifiers ------------+------+----------- text_field | text | test_locale=# select * from test_sort; text_field ------------ a b c d e è é à A (9 rows) But the order by clause yields the wrong results test_locale=# select * from test_sort order by text_field; text_field ------------ A a b c d e à è é (9 rows) Further points: - The sort command gives the same (wrong) results. - GUI (Cocoa) applications give the expected sort. Any clues? Should I assume that if sort does not give the expected result, postgresql will not be different? Thank you in advance -- Giorgio Valoti --------------
Giorgio Valoti <giorgio_v@mac.com> writes: > Further points: > - The sort command gives the same (wrong) results. > - GUI (Cocoa) applications give the expected sort. Hm, that's interesting. > Any clues? Should I assume that if sort does not give the expected > result, postgresql will not be different? Correct. I would consider it a bug if PG did not give the same sort order as sort(1) for the same locale setting --- they'll both ultimately depend on what the C library's strcoll() routine does. What you need to look into is why strcoll acts differently from your Cocoa apps. Are you certain you are really using the same locale setting for both cases? regards, tom lane