BUG #17676: Text comparison appears to be wrong

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: robj(at)hightouchinc(dot)com
Subject: BUG #17676: Text comparison appears to be wrong
Date: 2022-11-03 19:54:42
Message-ID: 17676-16c21939d5fab60d@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 17676
Logged by: Rob Johnson
Email address: robj(at)hightouchinc(dot)com
PostgreSQL version: 14.5
Operating system: Ubuntu
Description:

No tables are needed. Just ran this, comparing strings with lower-case 'x'
and period '.' characters. The first two columns are false as expected, the
last column is true, which appears to be wrong.

=> select '.' > 'x' as first, '.x' > 'x.' as second, '.xx' > 'x..' as third;

first | second | third
-------+--------+-------
f | f | t
(1 row)

My Postgres version:
=> select version();
version

---------------------------------------------------------------------------------------------------------------------------------
PostgreSQL 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1) on x86_64-pc-linux-gnu,
compiled by gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0, 64-bit
(1 row)

I am located in the United States and haven't done anything to change
character sets, collations, or anything like that. The \l+ psql command
shows this for my database, which is called nigeldb:

=> \l+ nigeldb
List of databases
Name | Owner | Encoding | Collate | Ctype | Access
privileges | Size | Tablespace | Description
---------+----------+----------+-------------+-------------+-------------------+-------+------------+-------------
nigeldb | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
| 48 MB | pg_default |
(1 row)

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message David G. Johnston 2022-11-03 20:12:35 Re: BUG #17676: Text comparison appears to be wrong
Previous Message Julien Rouhaud 2022-11-03 06:03:11 Re: BUG #17636: terminating connection because of crash of another server process