mirror of
https://github.com/MariaDB/server.git
synced 2026-05-14 19:07:15 +02:00
The bitmap implementation defines two template Bitmap classes. One optimized for 64-bit (default) wide bitmaps while the other is used for all other widths. In order to optimize the computations, Bitmap<64> class has defined its own member functions for bitmap operations, the other one, however, relies on mysys' bitmap implementation (mysys/my_bitmap.c). Issue 1: In case of non 64-bit Bitmap class, intersect() wrongly reset the received bitmap while initialising a new local bitmap structure (bitmap_init() clears the bitmap buffer) thus, the received bitmap was getting cleared. Fixed by initializing the local bitmap structure by using a temporary buffer and later copying the received bitmap to the initialised bitmap structure. Issue 2: The non 64-bit Bitmap class had the Iterator missing which caused compilation failure. Also added a cmake variable to hold the MAX_INDEXES value when supplied from the command prompt. (eg. cmake .. -DMAX_INDEXES=128U). Checks have been put in place to trigger build failure if MAX_INDEXES value is greater than 128. Test modifications: * Introduced include/have_max_indexes_[64|128].inc to facilitate skipping of tests for which the output differs with different MAX_INDEXES. * Introduced include/max_indexes.inc which would get modified by cmake to reflect the MAX_INDEXES value used to build the server. This file simply sets an mtr variable '$max_indexes' to show the MAX_INDEXES value, which will then be consumed by the above introduced include file. * Some tests (portions), dependent on MAX_INDEXES value, have been moved to separate test files. |
||
|---|---|---|
| .. | ||
| archive | ||
| binlog | ||
| csv | ||
| encryption | ||
| engines | ||
| federated | ||
| funcs_1 | ||
| funcs_2 | ||
| galera | ||
| galera_3nodes | ||
| handler | ||
| heap | ||
| innodb | ||
| innodb_fts | ||
| innodb_zip | ||
| jp | ||
| large_tests | ||
| maria | ||
| mtr/t | ||
| mtr2 | ||
| multi_source | ||
| ndb | ||
| optimizer_unfixed_bugs | ||
| parts | ||
| percona | ||
| perfschema | ||
| perfschema_stress | ||
| plugins | ||
| roles | ||
| rpl | ||
| storage_engine | ||
| stress | ||
| sys_vars | ||
| unit | ||
| vcol | ||
| wsrep | ||