• marko's avatar
    branches/innodb+: buf_get_volume_buffered(): When estimating the number of · 36c9bbc7
    marko authored
    records on a page, count each unique buffered record at most once.
    
    ibuf_get_volume_buffered_hash(): New function, for inserting a hashed record
    into a bit array.
    
    ibuf_get_volume_buffered_count(): New function, refactored from
    ibuf_get_volume_buffered(), for counting the unique records buffered for
    the page.
    
    ibuf_get_volume_buffered(): Define hash_bitmap, a bit array for identifying
    duplicate records.  Hash collisions do not hurt correctness, only performance.
    If the number of records on the page is estimated as 0, deletes will not be
    buffered.
    
    This patch is just for the record, as is rb://44.  In the tests run so far,
    the function ibuf_get_volume_buffered() always seems to estimate the number
    of records as 0, disabling all buffered deletes.
    36c9bbc7
ibuf0ibuf.c 110 KB