[GENERAL] 9.5 "chained equality" behavior - Mailing list pgsql-general

From Joshua Ma
Subject [GENERAL] 9.5 "chained equality" behavior
Date
Msg-id CAG9XPV=19NvR-x1e4C3vizdmu81xGQk0tDbpYw6VL9PvgOROog@mail.gmail.com
Whole thread Raw
Responses Re: [GENERAL] 9.5 "chained equality" behavior
Re: [GENERAL] 9.5 "chained equality" behavior
Re: [GENERAL] 9.5 "chained equality" behavior
Re: 9.5 "chained equality" behavior
List pgsql-general
Our team is upgrading from 9.4 to 9.5, and we noticed this behavior change:

9.4:
# SELECT true = true = true;
 ?column?
----------
 t
(1 row)

9.5:
# SELECT true = true = true;
ERROR:  syntax error at or near "="
LINE 1: SELECT true = true = true;

Now, there's actually a larger problem with this, since it's not actually chained equality and only looks like it. It looks like 9.4 is evaluating right-to-left. We're going to fix usages of this to instead do (a = b && a = c) instead of (a = b = c).

However, I wanted to email in because I couldn't see what in the 9.5 changelog (https://www.postgresql.org/docs/9.6/static/release-9-5.html) would cause this to syntax error. I'm worried that there are other incompatibilities that we didn't notice.

Can anyone shed some light?

--
Joshua Ma
Benchling | benchling.com

pgsql-general by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: [GENERAL] pg_basebackup error: replication slot"pg_basebackup_2194" already exists
Next
From: Thomas Kellerer
Date:
Subject: Re: [GENERAL] 9.5 "chained equality" behavior