• Krunal Bauskar's avatar
    MDEV-27805: tpcc workload shows regression with MDB-10.6 · fb875055
    Krunal Bauskar authored
    - regression got revealed while running tpcc workload.
    
    - as part of MDEV-25919 changes logic for statistics computation was revamped.
    
    - if the table has changed to certain threshold then table is added to
      statistics recomputation queue (dict_stats_recalc_pool_add)
    
    - after the table is added to queue the background statistics thread is
      notified
    
    - during revamp the condition to notify background statistics threads was
      wrongly updated to check if the queue/vector is empty when it should
      check if there is queue/vector has entries to process.
    
    - vec.begin() == vec.end() : only when vector is empty
    
    - also accessing these iterator outside the parallely changing vector is not
      safe
    
    - fix now tend to notify background statistics thread if the logic adds
      an entry to the queue/vector.
    fb875055
dict0stats_bg.cc 13.6 KB