From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Bruce Momjian <bruce(at)momjian(dot)us> |
Subject: | release notes: tids & self-joins |
Date: | 2019-06-13 17:14:45 |
Message-ID: | CA+TgmoY==TZwk-4cM3Usebq1f=j7Hpm1brFbk1v48h45wsWzzg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
The release notes say:
<listitem>
<!--
Author: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2018-12-30 [b5415e3c2] Support parameterized TidPaths.
Author: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)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
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2019-06-13 17:22:16 | Re: release notes: tids & self-joins |
Previous Message | Jesper Pedersen | 2019-06-13 16:31:54 | Re: Index Skip Scan |