Re: lower() silently fails for 9.5.3 on Windows, but works on Mac, Linux

From: Alexander Farber <alexander(dot)farber(at)gmail(dot)com>
To:
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: lower() silently fails for 9.5.3 on Windows, but works on Mac, Linux
Date: 2016-08-08 08:20:46
Message-ID: CAADeyWjtv_8jJUKVkfoCTf=ncn+AEY6rNP6A1TvEMH_XLy5-dg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello Charles, unfortunately on Windows 7 this fails:

psql (9.5.3)
Type "help" for help.

# select lower(('И'::text collate "en_US")) ;
ERROR: collation "en_US" for encoding "UTF8" does not exist
LINE 1: select lower(('?'::text collate "en_US")) ;
^
By the way I the following code works well for me on all 3 platforms:

CREATE TABLE words_verbs (
word varchar(255) PRIMARY KEY CHECK (
word ~ '^[А-Я]{2,}$' AND
word !~ '[ЖШ]Ы' AND
word !~ '[ЧЩ]Я' AND
word !~ 'Ц[ЮЯ]' AND
(word ~ '[ТЧ]ЬСЯ$' OR
word ~ '[ТЧ]Ь$' OR
word ~ 'ТИ$')),
hashed varchar(32) NOT NULL
);

but I understand that it is probably different methods on the lower layer
(pcre instead of some collating functions?)....

Regards
Alex

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Charles Clavadetscher 2016-08-08 08:27:12 Re: lower() silently fails for 9.5.3 on Windows, but works on Mac, Linux
Previous Message Charles Clavadetscher 2016-08-08 08:15:28 Re: lower() silently fails for 9.5.3 on Windows, but works on Mac, Linux