Thanks to everyone, pushed

Alexander Korotkov wrote:
On Fri, Mar 2, 2018 at 6:57 AM, Thomas Munro <thomas.mu...@enterprisedb.com <mailto:thomas.mu...@enterprisedb.com>> wrote:


    My thought experiments about pseudo-pages and avoiding the split stuff
    were not intended to get the patch kicked out.  I thought for a while
    that hash indexes were a special case and could benefit from
    dispensing with those trickier problems.  Upon further reflection, for
    interesting size hash indexes pure hash value predicate tags wouldn't
    be much better.  Furthermore, if we do decide we want to use using x %
    max_predicate_locks_per_relation to avoid having to escalate to
    relation predicate locks at the cost of slightly higher collision rate
    then we should consider that for the whole system (including heap page
    predicate locking), not just hash indexes.  Please consider those
    ideas parked for now.


OK.  While our potential pseudo-pages are identified as
"hash_value % some_constant_modulus", real bucket pages are very roughly
identified as "hash_value % number_of_index_pages".  So, page number is
adoptive to index size, despite it costs us handling page split. In the same way,
locking in other index access methods is adoptive to an index size, so
that should be considered as useful feature which should be present in hash index
as well.

------
Alexander Korotkov
Postgres Professional:http://www.postgrespro.com <http://www.postgrespro.com/>
The Russian Postgres Company

--
Teodor Sigaev                      E-mail: teo...@sigaev.ru
                                      WWW: http://www.sigaev.ru/

Reply via email to