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