-
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.
Frazer Clement authoredAfter 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