summaryrefslogtreecommitdiff
path: root/sql/unireg.h
diff options
context:
space:
mode:
authorunknown <ingo@mysql.com>2005-12-02 16:27:18 +0100
committerunknown <ingo@mysql.com>2005-12-02 16:27:18 +0100
commit2547d3a5029d472cc049b66a76d4aaf3788769a2 (patch)
tree0c8cfb24444d1fcb19a7bf0773a7e6cb7d435c33 /sql/unireg.h
parent1738ffa96848136d5efad756fb8e16f032e6d159 (diff)
downloadmariadb-git-2547d3a5029d472cc049b66a76d4aaf3788769a2.tar.gz
Bug#10932 - Building server with key limit of 128, makes test cases fail
Allow for configuration of the maximum number of indexes per table. Added and used a configure.in macro. Replaced fixed limits by the configurable limit. Limited MyISAM indexes to its hard limit. Fixed a bug in opt_range.cc for many indexes with InnoDB. Tested for 2, 63, 64, 65, 127, 128, 129, 255, 256, and 257 indexes. Testing this part of the bugfix requires rebuilding of the server with different options. This cannot be done with our test suite. Therefore I added the necessary test files to the bug report. If you repeat the tests, please note that the ps_* tests fail for everything but 64 indexes. This is because of differences in the meta data, namely field lengths for index names etc. config/ac-macros/misc.m4: Bug#10932 - Building server with key limit of 128, makes test cases fail Allow for configuration of the maximum number of indexes per table. Added a macro for the new build option. configure.in: Bug#10932 - Building server with key limit of 128, makes test cases fail Allow for configuration of the maximum number of indexes per table. Added a call for the new macro. include/myisam.h: Bug#10932 - Building server with key limit of 128, makes test cases fail Allow for configuration of the maximum number of indexes per table. Limit the number of keys for MyISAM to its hard limit. sql/mysql_priv.h: Bug#10932 - Building server with key limit of 128, makes test cases fail Allow for configuration of the maximum number of indexes per table. Stick with the optimized Bitmap<64> if indexes are limited to 64 or lower. Otherwise use a bigger bitmap. It must be defined as a multiple of 8. sql/opt_range.cc: Bug#10932 - Building server with key limit of 128, makes test cases fail Allow for configuration of the maximum number of indexes per table. Initialize an object element to avoid a crash when using InnoDB with many indexes. sql/unireg.h: Bug#10932 - Building server with key limit of 128, makes test cases fail Allow for configuration of the maximum number of indexes per table. Replace the fixed limit by the configurable limit. tests/mysql_client_test.c: Bug#10932 - Building server with key limit of 128, makes test cases fail Allow for configuration of the maximum number of indexes per table. Replace the fixed limit by the configurable limit.
Diffstat (limited to 'sql/unireg.h')
-rw-r--r--sql/unireg.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/unireg.h b/sql/unireg.h
index 8f21dd1d2db..deae6908a69 100644
--- a/sql/unireg.h
+++ b/sql/unireg.h
@@ -48,7 +48,7 @@
#define MAX_ALIAS_NAME 256
#define MAX_FIELD_NAME 34 /* Max colum name length +2 */
#define MAX_SYS_VAR_LENGTH 32
-#define MAX_KEY 64 /* Max used keys */
+#define MAX_KEY MAX_INDEXES /* Max used keys */
#define MAX_REF_PARTS 16 /* Max parts used as ref */
#if SIZEOF_CHARP > 4
#define MAX_KEY_LENGTH 3072 /* max possible key, if 64 bits */