Re: Index range search optimization

Pavel Borisov <pashkin.elfe@gmail.com>

From: Pavel Borisov <pashkin.elfe@gmail.com>
To: Alexander Korotkov <aekorotkov@gmail.com>
Cc: Peter Geoghegan <pg@bowt.ie>, Konstantin Knizhnik <knizhnik@garret.ru>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2023-09-25T10:11:53Z
Lists: pgsql-hackers

Attachments

Sorry, I've mistaken with attached version previously. Correct v5 attached.

On Mon, 25 Sept 2023 at 13:58, Pavel Borisov <pashkin.elfe@gmail.com> wrote:
>
> Hi, Alexander!
>
> I found and fixed a couple of naming issues that came to v4 from
> earlier patches.
> Also, I added initialization of requiredMatchedByPrecheck in case of first page.
>
> Please see patch v5.
>
> One more doubt about naming. Calling function
> _bt_checkkeys(IndexScanDesc scan, IndexTuple tuple, int tupnatts,
> ScanDirection dir, bool *continuescan, bool requiredMatchedByPrecheck)
> as
> (void) _bt_checkkeys(scan, itup, indnatts, dir,
> &requiredMatchedByPrecheck, false);
> looks little bit misleading because of coincidence of names of 5 and 6
> arguments.

Commits

  1. Skip checking of scan keys required for directional scan in B-tree

  2. Invalidate binary search bounds consistently.