Re: Odd 9.4, 9.3 buildfarm failure on s390x

Andrew Dunstan <andrew.dunstan@2ndquadrant.com>

From: Andrew Dunstan <andrew.dunstan@2ndquadrant.com>
To: Tom Lane <tgl@sss.pgh.pa.us>, Mark Wong <mark@2ndQuadrant.com>
Cc: Andrew Gierth <andrew@tao11.riddles.org.uk>, Andres Freund <andres@anarazel.de>, pgsql-hackers@postgresql.org
Date: 2018-10-01T20:58:21Z
Lists: pgsql-hackers

On 10/01/2018 11:58 AM, Tom Lane wrote:
> Mark Wong <mark@2ndQuadrant.com> writes:
>>                    a                   |                  a                   |  uuid_cmp
>> --------------------------------------+--------------------------------------+-------------
>>   11111111-1111-1111-1111-111111111111 | 11111111-1111-1111-1111-111111111111 |           0
>>   11111111-1111-1111-1111-111111111111 | 22222222-2222-2222-2222-222222222222 | -2147483648
>>   11111111-1111-1111-1111-111111111111 | 3f3e3c3b-3a30-3938-3736-353433a2313e | -2147483648
>>   22222222-2222-2222-2222-222222222222 | 11111111-1111-1111-1111-111111111111 |           1
>>   22222222-2222-2222-2222-222222222222 | 22222222-2222-2222-2222-222222222222 |           0
>>   22222222-2222-2222-2222-222222222222 | 3f3e3c3b-3a30-3938-3736-353433a2313e | -2147483648
>>   3f3e3c3b-3a30-3938-3736-353433a2313e | 11111111-1111-1111-1111-111111111111 |           1
>>   3f3e3c3b-3a30-3938-3736-353433a2313e | 22222222-2222-2222-2222-222222222222 |           1
>>   3f3e3c3b-3a30-3938-3736-353433a2313e | 3f3e3c3b-3a30-3938-3736-353433a2313e |           0
>> (9 rows)
>
> Oooh ... apparently, on that platform, memcmp() is willing to produce
> INT_MIN in some cases.  That's not a safe value for a sort comparator
> to produce --- we explicitly say that somewhere, IIRC.  I think we
> implement DESC by negating the comparator's result, which explains
> why only the DESC case fails.
>
> 			


Is there a standard that forbids this, or have we just been lucky up to now?

cheers

andrew

-- 
Andrew Dunstan                https://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Allow btree comparison functions to return INT_MIN.