mariadb/mysql-test/suite/innodb
Thirunarayanan Balathandayuthapani a7a933982d MDEV-19574 innodb_stats_method is not honored when innodb_stats_persistent=ON
Problem:
=======
 InnoDB persistent statistics doesn't take innodb_stats_method
variable while calculating n_diff_pfx for the n-prefix index
columns.

Solution:
=========
While calculating the persistent statistics, InnoDB consider all
NULLS as different value when innodb_stats_method is
set to NULLS_UNEQUAL or NULLS_IGNORED. InnoDB statistics depends
on the value of "innodb_stats_method" variable when the
statistics were last recalculated.

dict_stats_analyze_index_level(),
dict_stats_scan_page(),
dict_stats_analyze_index_below_cur(),
dict_stats_analyze_index_for_n_prefix(): All function accepts
the parameter to indicate the innodb_stats_method. It also
calculates the number of non-null key value for each level or leaf page

dict_stats_index_set_n_diff(): calculates the number of non-null
values similar to number of different key values.

Append the non-default innodb_stats_method variable name
for n_diff_pfx statistics description in mysql.innodb_index_stats.

IndexScanStatistics: Structure to store the various statistical
metric gathered during index scan fetch operation. This structure
is being used in dict_stats_analyze_index_level() to fetch the
statistics
2025-07-18 20:24:15 +05:30
..
include Merge branch '10.6' into 10.11 2024-05-10 20:02:18 +02:00
r MDEV-19574 innodb_stats_method is not honored when innodb_stats_persistent=ON 2025-07-18 20:24:15 +05:30
t MDEV-19574 innodb_stats_method is not honored when innodb_stats_persistent=ON 2025-07-18 20:24:15 +05:30