The following bug has been logged on the website:
Bug reference: 14717
Logged by: Paolo Guagliardo
Email address: paolo(dot)guagliardo(at)ed(dot)ac(dot)uk
PostgreSQL version: 9.6.3
Operating system: Scientific Linux release 7.3 (Nitrogen)
Description:
Comparisons between row types with NULLs behave as expected:
SELECT (1,NULL) = (1,NULL);
?column?
----------
(1 row)
However, if we now create a composite type:
CREATE TYPE pair AS (a int, b int);
then we get
SELECT (1,NULL)::pair = (1,NULL)::pair ;
?column?
----------
t
(1 row)
while the answer should be NULL (unknown) as before.
Other operations (<>,>,<,>=,<=) are affected as well.