• Marko Mäkelä's avatar
    MDEV-22523 index->rtr_ssn.mutex is wasting memory · ba3d58ad
    Marko Mäkelä authored
    As part of the SPATIAL INDEX implementation in InnoDB,
    dict_index_t was expanded by a rtr_ssn_t field. There are only
    3 operations for this field, all protected by rtr_ssn_t::mutex:
    
    * btr_cur_search_to_nth_level() stores the least significant 32 bits
    of the 64-bit value that is stored in the index root page.
    (This would better be done when the table is opened for the
    very first time.)
    * rtr_get_new_ssn_id() increments the value by 1.
    * rtr_get_current_ssn_id() reads the current value.
    
    All these operations can be implemented equally safely by using
    atomic memory access operations.
    ba3d58ad
gis0rtree.ic 7.27 KB