Re: [PATCH] Covering SPGiST index

From: "Andrey M(dot) Borodin" <x4mmm(at)yandex-team(dot)ru>
To: Pavel Borisov <pashkin(dot)elfe(at)gmail(dot)com>
Cc: Postgres hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: [PATCH] Covering SPGiST index
Date: 2020-08-23 08:55:59
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


> 17 авг. 2020 г., в 21:04, Pavel Borisov <pashkin(dot)elfe(at)gmail(dot)com> написал(а):
> Postgres Professional:
> <v6-0001-Covering-SP-GiST-index-support-for-INCLUDE-column.patch>

I'm looking into the patch. I have few notes:

1. I see that in src/backend/access/spgist/README you describe SP-GiST tuple as sequence of {Value, ItemPtr to heap, Included attributes}. Is it different from regular IndexTuple where tid is within TupleHeader?

2. Instead of cluttering tuple->nextOffset with bit flags we could just change Tuple Header for leaf tuples with covering indexes. Interpret tuples for indexes with included attributes differently, iff it makes code cleaner. There are so many changes with SGLT_SET_OFFSET\SGLT_GET_OFFSET that it seems viable to put some effort into research of other ways to represent two bits for null mask and varatts.

3. Comment "* SPGiST dead tuple: declaration for examining non-live tuples" does not precede relevant code. because struct SpGistDeadTupleData was not moved.


Best regards, Andrey Borodin.

In response to


Browse pgsql-hackers by date

  From Date Subject
Next Message Andrey M. Borodin 2020-08-23 09:39:38 Re: Yet another fast GiST build (typo)
Previous Message Antonin Houska 2020-08-22 19:00:15 Re: xl_heap_header alignment?