release notes: tids & self-joins - Mailing list pgsql-hackers

From Robert Haas
Subject release notes: tids & self-joins
Date
Msg-id CA+TgmoY==TZwk-4cM3Usebq1f=j7Hpm1brFbk1v48h45wsWzzg@mail.gmail.com
Whole thread Raw
Responses Re: release notes: tids & self-joins
List pgsql-hackers
The release notes say:

      <listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2018-12-30 [b5415e3c2] Support parameterized TidPaths.
Author: Tom Lane <tgl@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



pgsql-hackers by date:

Previous
From: Jesper Pedersen
Date:
Subject: Re: Index Skip Scan
Next
From: Tom Lane
Date:
Subject: Re: release notes: tids & self-joins