Thread: PG 9.1 regression / row comparison?

From:
Denis de Bernardy
Date:

I seem to remember that each of the following three statements worked in PG 9.0. Is the last one failing expected in
9.1?Or is it due to the various contrib modules I've been playing with? (I've installed btree_gin, btree_gist, semver,
temporal,pgcrypt, spi/timetravel, and a couple more I can't remember off the top of my head...) 

test=# select row(1,2) = row(1,2); -- returns t
test=# select row(1,2) is distinct from row(1,2); -- returns f

test=# select row(1,2) <> row(1,2);

ERROR:  could not determine interpretation of row comparison operator <>
LINE 1: select row(1,2) <> row(1,2);
                        ^
HINT:  Row comparison operators must be associated with btree operator families.

From:
Gavin Flower
Date:

[...]
 > test=# select row(1,2) <> row(1,2);
 >
 > ERROR:  could not determine interpretation of row comparison operator <>
 > LINE 1: select row(1,2) <> row(1,2);
 >                         ^
 > HINT:  Row comparison operators must be associated with btree
operator > families.

Hi Denis,

I don't get this error with 9.1beta2,

$ uname -a
Linux saturn 2.6.35.13-92.fc14.x86_64 #1 SMP Sat May 21 17:26:25 UTC
2011 x86_64 x86_64 x86_64 GNU/Linux
$ psql
psql (9.1beta2)
Type "help" for help.

gavin=> select row(1,2) <> row(1,2);
  ?column?
----------
  f
(1 row)


Cheers,
Gavin

From:
Denis de Bernardy
Date:

I've actually traced it down to btree_gist. Not sure if this is the expected behavior:

test =# select row(1,2) <> row(1,2);
ERROR:  could not determine interpretation of row comparison operator <>
LINE 1: select row(1,2) <> row(1,2);
                        ^
HINT:  Row comparison operators must be associated with btree operator families.

test=# drop extension btree_gist cascade;
NOTICE:  drop cascades to constraint test_period_excl on table test.test_revs
DROP EXTENSION
test =# select row(1,2) <> row(1,2);
 ?column? 
----------
 f
(1 row)



From: Gavin Flower <>
To:
Cc:
Sent: Wednesday, June 15, 2011 4:40 AM
Subject: Re: [TESTERS] PG 9.1 regression / row comparison?

[...]
> test=# select row(1,2) <> row(1,2);
>
> ERROR:  could not determine interpretation of row comparison operator <>
> LINE 1: select row(1,2) <> row(1,2);
>                        ^
> HINT:  Row comparison operators must be associated with btree operator > families.

Hi Denis,

I don't get this error with 9.1beta2,

$ uname -a
Linux saturn 2.6.35.13-92.fc14.x86_64 #1 SMP Sat May 21 17:26:25 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
$ psql
psql (9.1beta2)
Type "help" for help.

gavin=> select row(1,2) <> row(1,2);
?column?
----------
f
(1 row)


Cheers,
Gavin
-
HOWTO Alpha/Beta Test:
http://wiki.postgresql.org/wiki/HowToBetaTest
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-testers