From: | Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> |
---|---|
To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
Cc: | Stephen Frost <sfrost(at)snowman(dot)net>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Simon Riggs <simon(at)2ndquadrant(dot)com>, Christoph Berg <myon(at)debian(dot)org>, Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [HACKERS] Surjective functional indexes |
Date: | 2018-03-23 15:39:24 |
Message-ID: | 32bb7b6e-b138-9a7c-e74b-7af1365ec4ee@postgrespro.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 22.03.2018 23:37, Alvaro Herrera wrote:
> The rd_projidx (list of each nth element in the index list that is a
> projection index) thing looks odd. Wouldn't it make more sense to have
> a list of index OIDs that are projection indexes?
>
rd_projidx is not a list, it is Bitmapset. It is just one of many bitmap
sets in RelationData:
Bitmapset *rd_indexattr; /* identifies columns used in indexes */
Bitmapset *rd_keyattr; /* cols that can be ref'd by foreign
keys */
Bitmapset *rd_pkattr; /* cols included in primary key */
Bitmapset *rd_idattr; /* included in replica identity index */
Yes, it is possible to construct Oid list of projectional indexes
instead of having bitmap which marks some indexes in projectional, but I
am not sure that
it will be more efficient both from CPU and memory footprint point of
view (in most indexes bitmap will consists of just one integer). In any
case, I do not think that it can have some measurable impact on
performance or memory size:
number of indexes and especially projectional indexes will very rarely
exceed 10.
--
Konstantin Knizhnik
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2018-03-23 15:40:37 | Re: Do I understand commit timestamps correctly? |
Previous Message | Jaime Soler | 2018-03-23 15:33:25 | Re: GSOC 2018 Ideas |