The release notes say: <listitem> <!-- Author: Tom Lane <t...@sss.pgh.pa.us> 2018-12-30 [b5415e3c2] Support parameterized TidPaths. Author: Tom Lane <t...@sss.pgh.pa.us> 2018-12-30 [0a6ea4001] Add a hash opclass for type "tid". -->
<para> Improve optimization of self-joins (Tom Lane) </para> </listitem> I don't think that's an accurate summary of those two items. It's true that they could make self-joins more efficient, but my reading is that it would only do so if the self-join happened to use the ctid column. If you're writing SELECT * FROM foo a, foo b WHERE a.ctid = b.ctid, it might very well help; but if you write SELECT * FROM foo a, foo b WHERE a.x = b.x, it won't, not even if there is a unique index on x. Or so I think. So I think that this should probably be changed to say something like "Improve optimization of self-joins on ctid columns" or "Improve optimization of joins involving columns of type tid." -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company