diff options
author | Satya B <satya.bn@sun.com> | 2009-04-24 16:33:50 +0530 |
---|---|---|
committer | Satya B <satya.bn@sun.com> | 2009-04-24 16:33:50 +0530 |
commit | 4610c13a2477e88bc055febb886e90a562bc2f76 (patch) | |
tree | dcc3ceab089d019567ded08d48e0f0a3ec090c07 /sql/mysqld.cc | |
parent | 08044795697dfd588841f9bacf589a4eeeff2431 (diff) | |
download | mariadb-git-4610c13a2477e88bc055febb886e90a562bc2f76.tar.gz |
Fix for BUG#43660- SHOW INDEXES/ANALYZE does NOT update cardinality
for indexes of InnoDB table
Fixes by replacing the PRNG that is used to pick random pages with a
better one.
Also adds a configuration option "innodb_use_legacy_cardinality_algorithm"
to enable the fix only when the option is set.
This patch is from http://bugs.mysql.com/file.php?id=11789
Diffstat (limited to 'sql/mysqld.cc')
-rw-r--r-- | sql/mysqld.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc index ad3521e5dde..0583e3fa57f 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -5044,7 +5044,8 @@ enum options_mysqld OPT_SECURE_FILE_PRIV, OPT_KEEP_FILES_ON_CREATE, OPT_INNODB_ADAPTIVE_HASH_INDEX, - OPT_FEDERATED + OPT_FEDERATED, + OPT_INNODB_USE_LEGACY_CARDINALITY_ALGORITHM }; @@ -5351,6 +5352,14 @@ Disable with --skip-innodb-doublewrite.", (gptr*) &innobase_use_doublewrite, (gptr*) &global_system_variables.innodb_table_locks, (gptr*) &global_system_variables.innodb_table_locks, 0, GET_BOOL, OPT_ARG, 1, 0, 0, 0, 0, 0}, + {"innodb_use_legacy_cardinality_algorithm", + OPT_INNODB_USE_LEGACY_CARDINALITY_ALGORITHM, + "Use legacy algorithm for picking random pages during index cardinality " + "estimation. Disable this to use a better algorithm, but note that your " + "query plans may change (enabled by default).", + (gptr*) &srv_use_legacy_cardinality_algorithm, + (gptr*) &srv_use_legacy_cardinality_algorithm, + 0, GET_BOOL, OPT_ARG, 1, 0, 0, 0, 0, 0}, #endif /* End HAVE_INNOBASE_DB */ {"isam", OPT_ISAM, "Obsolete. ISAM storage engine is no longer supported.", (gptr*) &opt_isam, (gptr*) &opt_isam, 0, GET_BOOL, NO_ARG, 0, 0, 0, |