Re: Allowing extensions to supply operator-/function-specific info
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Paul Ramsey <pramsey@cleverelephant.ca>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-02-26T00:09:11Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Allow extensions to generate lossy index conditions.
- 74dfe58a5927 12.0 landed
-
Build out the planner support function infrastructure.
- a391ff3c3d41 12.0 landed
-
Create the infrastructure for planner support functions.
- 1fb57af92069 12.0 landed
-
Disable transforms that replaced AT TIME ZONE with RelabelType.
- c22ecc6562aa 10.0 cited
Paul Ramsey <pramsey@cleverelephant.ca> writes: > On Mon, Feb 25, 2019 at 3:01 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: >> It's whichever one the index column's opclass belongs to. Basically what >> you're trying to do here is verify whether the index will support the >> optimization you want to perform. > * If I have tbl1.geom > * and I have built two indexes on it, a btree_geometry_ops and a > gist_geometry_ops_2d, and > * and SupportRequestIndexCondition.opfamily returns me the btree family > * and I look and see, "damn there is no && operator in there" > * am I SOL, even though an appropriate index does exist? No. If there are two indexes matching your function's argument, you'll get a separate call for each index. The support function is only responsible for thinking about one index at a time and seeing if it can be used. If more than one can be used, figuring out which one is better is done by later cost comparisons. regards, tom lane