lp:~tsarev/percona-server/replication_slave_different_schema

Created by Oleg Tsarev on 2011-06-11 and last modified on 2011-06-11
Get this branch:
bzr branch lp:~tsarev/percona-server/replication_slave_different_schema
Only Oleg Tsarev can upload to this branch. If you are Oleg Tsarev please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Recent revisions

175. By Oleg Tsarev on 2011-06-11

fix install_tests.sh (Percona-Server- instead of Percona-Server)

174. By Oleg Tsarev on 2011-06-11

port commit number 184 from lp:percona-server/5.1 (fix librt search)

173. By Oleg Tsarev on 2011-06-11

update Makefile:
 * Now user Percona-Server- instead of Percona-Server
 * call BUILD/autorun.sh while call "make main"

172. By Oleg Tsarev on 2011-06-11

fix bashism in install_tests.sh

171. By Oleg Tsarev on 2011-06-11

wl5151.patch slave_type_conversions_error_on_truncate.patch and replication_slave_skip_columns.patch was merged to replication_slave_different_schema.patch

170. By Oleg Tsarev on 2011-05-31

fix error message 1900 (can't convert without truncate)

169. By Oleg Tsarev on 2011-05-31

fix tests binlog_stm_binlog, rpl_row_tabledefs_3innodb

168. By Oleg Tsarev on 2011-05-31

merge tests fix

167. By Oleg Tsarev on 2011-05-31

issue 14794 - ability to skip columns from master on slave

166. By Alexey Kopytov on 2011-05-15

Fix for MySQL bug #54127: mysqld segfaults when built using
--with-max-indexes=128

When using a non-default MAX_KEY value, a different code path is used
when processing index bitmaps. With the default value of 64, the
optimized "template <> class Bitmap<64>" is used which represents and
processes bitmaps as 64-bit integeres. Otherwise, "template <uint
default_width> class Bitmap" is used in which case bitmaps are
represented as arrays.

Multiple problems with the "non-optimized" Bitmap class were discovered
when testing a server binary built with --with-max-indexes=128:

1. bitmap_set_prefix() could overrun the internal buffer when resetting
the remainder of the buffer after setting the prefix due to an
incorrectly calculated remainder's length. This was the reason for the
crash on startup in MySQL bug #54127.

2. Bitmap::intersect() did not take into account that bitmap_init()
resets the supplied buffer, so an intersection with a zero bitmap was
always calculated (reported as MySQL #61178). This led to numerous test
failures due to different execution plans produced by the optimizer.

3. Bitmap::to_ulonglong() incorrectly calculated the result value due to
serious bugs in [u]int*korr/[u]int*store set of macros in
my_global.h (reported as MySQL bugs #61179 and #61180). This led to test
failures in distinct.test and group_min_max.test.

There are still a number of failing tests when running the test suite
with --with-max-indexes=128:

- create.test contains a test case explicitly testing the 64-bit index
limit;

- the ps_N* series of tests verifies the metadata sent by EXPLAIN, where
the field length of "possible_keys" and "key_len" columns depends on
the MAX_KEY value and hence, is different for a binary built with a
non-default value of --with-max-indexes.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers