From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Victor Snezhko <snezhko(at)indorsoft(dot)ru> |
Cc: | Volkan YAZICI <yazicivo(at)ttnet(dot)net(dot)tr>, pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #1931: ILIKE and LIKE fails on Turkish locale |
Date: | 2006-09-22 18:19:18 |
Message-ID: | 2557.1158949158@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs pgsql-tr-genel |
Victor Snezhko <snezhko(at)indorsoft(dot)ru> writes:
> My FreeBSD lists a whole heck of characters:
> character 0x85 is a space
> character 0xa0 is a space
> character 0xaa is alphabetical
> character 0xb5 is alphabetical
> character 0xba is alphabetical
> character 0xc0 is alphabetical
> ... 0xc1-0xfe is alphabetical
> character 0xff is alphabetical
Hm. I'm still thinking that this behavior is wrong for UTF8 encoding,
but it would be reasonable in LATINn and related encodings, so we
probably ought to do something about it.
After further thought, it's not so much that we can't tolerate
locale-dependent behavior of isspace() in general, as that in this
particular case we are expecting it to match the scanner's idea
of a space: scan.l has
space [ \t\n\r\f]
which obviously is not locale-aware. I think we need convert_ident to
use a plpgsql_isspace() that accepts these and only these as spaces.
Any high-bit-set byte is part of an identifier according to scan.l's
rules, and convert_ident must have the same behavior regardless of locale.
There may be related risks in and around the other flex scanners
... will look.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Willa Wei | 2006-09-22 19:34:10 | BUG #2646: Installation Failed due to Permissions |
Previous Message | Thomas Verchow | 2006-09-22 18:13:51 | BUG #2645: pg_restore crashes |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2006-09-22 21:41:53 | Re: BUG #1931: ILIKE and LIKE fails on Turkish locale |
Previous Message | Douglas Toltzman | 2006-09-22 17:55:14 | Re: BUG #1931: ILIKE and LIKE fails on Turkish locale |