pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
 BUG #19004: Incorrect lowercasing of word-final Greek capital Sigma (Σ)
2+ messages / 2 participants
[nested] [flat]

*  BUG #19004: Incorrect lowercasing of word-final Greek capital Sigma (Σ)
@ 2025-07-31 03:06 PG Bug reporting form <noreply@postgresql.org>
  2025-07-31 07:39 `  Re: BUG #19004: Incorrect lowercasing of word-final Greek capital Sigma (Σ) John Naylor <johncnaylorls@gmail.com>
  0 siblings, 1 reply; 2+ messages in thread

From: PG Bug reporting form @ 2025-07-31 03:06 UTC (permalink / raw)
  To: pgsql-bugs@lists.postgresql.org; +Cc: 221250180@smail.nju.edu.cn

The following bug has been logged on the website:

Bug reference:      19004
Logged by:          Bosheng Peng
Email address:      221250180@smail.nju.edu.cn
PostgreSQL version: 17.5
Operating system:   windows with docker
Description:        

When applying UPPER() to the Greek word 'κόσμος', PostgreSQL returns
'ΚΌΣΜΟΣ'. However, applying LOWER() to that result returns 'κόσμοσ' instead
of the original 'κόσμος'.

According to wikipedia (https://en.wikipedia.org/wiki/Sigma), there are two
forms of lowercase for Greek capital Sigma (Σ):
- If Σ is at the end of a word, it should lowercase to ς
- If Σ is in the middle of a word, it should lowercase to σ

How to repeat:
```sql
SELECT LOWER(UPPER('κόσμος'));
-- Expected: 'κόσμος'
-- Actual:   'κόσμοσ'
```



^ permalink  raw  reply  [nested|flat] 2+ messages in thread

*  Re: BUG #19004: Incorrect lowercasing of word-final Greek capital Sigma (Σ)
  2025-07-31 03:06  BUG #19004: Incorrect lowercasing of word-final Greek capital Sigma (Σ) PG Bug reporting form <noreply@postgresql.org>
@ 2025-07-31 07:39 ` John Naylor <johncnaylorls@gmail.com>
  0 siblings, 0 replies; 2+ messages in thread

From: John Naylor @ 2025-07-31 07:39 UTC (permalink / raw)
  To: 221250180@smail.nju.edu.cn; pgsql-bugs@lists.postgresql.org

On Thu, Jul 31, 2025 at 1:50 PM PG Bug reporting form
<noreply@postgresql.org> wrote:
> When applying UPPER() to the Greek word 'κόσμος', PostgreSQL returns
> 'ΚΌΣΜΟΣ'. However, applying LOWER() to that result returns 'κόσμοσ' instead
> of the original 'κόσμος'.

Hi,

For built-in collations, context-sensitive case mappings are a
forthcoming feature which will be available in PG18 later this year,
with the pg_unicode_fast collation:

CREATE TABLE example (
a text COLLATE PG_UNICODE_FAST,
b text COLLATE PG_C_UTF8
);

INSERT INTO example VALUES ('κόσμος', 'κόσμος');

SELECT LOWER(UPPER(a)), LOWER(UPPER(b)) FROM example;
 lower  | lower
--------+--------
 κόσμος | κόσμοσ
(1 row)

-- 
John Naylor
Amazon Web Services





^ permalink  raw  reply  [nested|flat] 2+ messages in thread


end of thread, other threads:[~2025-07-31 07:39 UTC | newest]

Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2025-07-31 03:06  BUG #19004: Incorrect lowercasing of word-final Greek capital Sigma (Σ) PG Bug reporting form <noreply@postgresql.org>
2025-07-31 07:39 ` John Naylor <johncnaylorls@gmail.com>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox