Re: Re: WIP: Covering + unique indexes.

David Steele <david@pgmasters.net>

From: David Steele <david@pgmasters.net>
To: Anastasia Lubennikova <a.lubennikova@postgrespro.ru>
Cc: Alexander Korotkov <a.korotkov@postgrespro.ru>, Peter Geoghegan <pg@bowt.ie>, Thomas Munro <thomas.munro@enterprisedb.com>, Andrey Borodin <x4mmm@yandex-team.ru>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Anastasia Lubennikova <lubennikovaav@gmail.com>
Date: 2018-03-26T13:42:08Z
Lists: pgsql-hackers
On 3/26/18 6:10 AM, Alexander Korotkov wrote:
> 
> So, as I get you're proposing to introduce INDEX_ALT_TID_MASK flag
> which would indicate that we're storing something special in the t_tid
> offset.  And that should help us not only for covering indexes, but also for
> further btree enhancements including suffix truncation.  What exactly do
> you propose to store into t_tid offset when INDEX_ALT_TID_MASK flag
> is set?  Is it number of attributes in this particular index tuple?

It appears that discussion and review of this patch is ongoing so it
should not be marked Ready for Committer.  I have changed it to Waiting
on Author since there are several pending reviews and at least one bug.

Regards,
-- 
-David
david@pgmasters.net


Commits

  1. Adjust INCLUDE index truncation comments and code.

  2. Add commentary explaining why MaxIndexTuplesPerPage calculation is safe.

  3. Indexes with INCLUDE columns and their support in B-tree

  4. Add amcheck verification of heap relations belonging to btree indexes.

  5. Doc: move info for btree opclass implementors into main documentation.

  6. Doc: mention that you can't PREPARE TRANSACTION after NOTIFY.

  7. Remove dedicated B-tree root-split record types.

  8. Restructure index access method API to hide most of it at the C level.

  9. Split _bt_insertonpg to two functions.

  10. Major overhaul of btree index code. Eliminate special BTP_CHAIN logic for