Skip to content
  • Frazer Clement's avatar
    7cdb70c4
    Bug #23539805 ALL REPORT MEM SHOWS WRONG DATA DISTRIBUTIONS · 7cdb70c4
    Frazer Clement authored
    After SR and NR, copy fragments were not being maintained or queried.
    This led to an observable imbalance after further DML.
    
    FR tables are implemented as a a set of one or more 'main' fragments
    containing subsets of the data, and zero or more 'copy' fragments.
    Each main fragment has zero or more copyfragments, one in each
    nodegroup.
    
    The relationship between main and copyfragments is known by DIH and
    used to provide a fragment with a node-local replica to read requests
    and to provide a sequence of fragment ids to FR maintenance triggers.
    
    This relationship was generated at table creation time, but was not
    rebuilt on restarts.
    
    A new testcase ndb_fully_replicated_restart2 is added which covers :
     - Rolling node restart + System restart with node takeover
     - Node-local replica reading with > 1 NG across multiple operation types
     - Copy fragment maintenance checks
    
    Existing testcase ndb_fully_replicated_restart is modified to :
      - Use > 1 NG
      - Actually use an FR table for the test!
    
    It still has somewhat limited utility
    
    Note that despite the push of a fix for bug#23702848 there are still parts of
    the new testcase commented out due to failures.
    7cdb70c4
    Bug #23539805 ALL REPORT MEM SHOWS WRONG DATA DISTRIBUTIONS
    Frazer Clement authored
    After SR and NR, copy fragments were not being maintained or queried.
    This led to an observable imbalance after further DML.
    
    FR tables are implemented as a a set of one or more 'main' fragments
    containing subsets of the data, and zero or more 'copy' fragments.
    Each main fragment has zero or more copyfragments, one in each
    nodegroup.
    
    The relationship between main and copyfragments is known by DIH and
    used to provide a fragment with a node-local replica to read requests
    and to provide a sequence of fragment ids to FR maintenance triggers.
    
    This relationship was generated at table creation time, but was not
    rebuilt on restarts.
    
    A new testcase ndb_fully_replicated_restart2 is added which covers :
     - Rolling node restart + System restart with node takeover
     - Node-local replica reading with > 1 NG across multiple operation types
     - Copy fragment maintenance checks
    
    Existing testcase ndb_fully_replicated_restart is modified to :
      - Use > 1 NG
      - Actually use an FR table for the test!
    
    It still has somewhat limited utility
    
    Note that despite the push of a fix for bug#23702848 there are still parts of
    the new testcase commented out due to failures.
Loading