Re: BUG #18523: String compare not consistent - Mailing list pgsql-bugs

From Patrick van Dijk
Subject Re: BUG #18523: String compare not consistent
Date
Msg-id CAEf=80q9DjTPH4n5KJTxGEkAVfMq+5DeeXniASDq-nupf_+u+w@mail.gmail.com
Whole thread Raw
In response to Re: BUG #18523: String compare not consistent  (Patrick van Dijk <patrick.van.dijk@gmail.com>)
List pgsql-bugs

I am getting more curious, WIndows is consistent, but Azure/Linux is not.

select '.' < '0'; -- true, true
select '.x' < '0x'; -- false, true
select '.1' < '01'; -- false, true
select '..' < '0.'; -- true, true
select '..1' < '0.1'; -- false, true


On Wed, Jun 26, 2024 at 11:44 AM Patrick van Dijk <patrick.van.dijk@gmail.com> wrote:
On Windows: PostgreSQL 16.2, compiled by Visual C++ build 1937, 64-bit
On Azure: PostgreSQL 16.3 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 11.2.0, 64-bit




On Wed, Jun 26, 2024 at 11:44 AM PG Bug reporting form <noreply@postgresql.org> wrote:
The following bug has been logged on the website:

Bug reference:      18523
Logged by:          Patrick van Dijk
Email address:      patrick.van.dijk@gmail.com
PostgreSQL version: 16.3
Operating system:   Windows vs Linux/Azure
Description:       

When I try the following on a Azure/Linux version of PostgreSQL i see some
strange results that are not correct.
On Windows the behavior is correct.

select '|' < '0';               -- true, true, this is correct
select '|1' < '01';     -- false, true, Azure/Linux is wrong
select '||' < '0|';     -- true, true, this is correct
select '||1' < '0|1';   -- false, true, Azure/Linux is wrong

When the first character compares <, then no matter what follows, it should
be <...

pgsql-bugs by date:

Previous
From: Patrick van Dijk
Date:
Subject: Re: BUG #18523: String compare not consistent
Next
From: Laurenz Albe
Date:
Subject: Re: BUG #18523: String compare not consistent