List:Commits« Previous MessageNext Message »
From:Bjorn Munch Date:January 21 2013 10:01am
Subject:bzr push into mysql-trunk branch (bjorn.munch:5400 to 5401)
View as plain text  
 5401 Bjorn Munch	2013-01-21 [merge]
      Add --unit-tests to an mtr run in default.release, so it will be run in gcov

    modified:
      mysql-test/collections/default.release.in
 5400 Sujatha Sivakumar	2013-01-21
      Bug#16061982:REPLICATION BETWEEN A LINUX MASTER AND WINDOWS
      SLAVE, WITH MIXED CASE BREAKS
      
      Problem:
      =======
      Replication between a Linux master and Windows slave, with
      mixed case database/table names, fails after a replicated
      table is opened locally on the slave. "FLUSH TABLES" command
      needs to be issued on the salve to see the latest updates
      that are applied on slave. The master and the slave should
      have the following case settings.
      
      Linux master:
      lower_case_table_names=0
      
      Windows slave:
      lower_case_table_names=2
      
      Analysis:
      ========
      When "lower_case_table_names" is set to 1 or 2 in a general
      scenario without replication the database names and the
      table names are converted to lower case.
      The following two function check for "lower_case_table_names>0"
      and convert the db and table name to lower case.
      "check_and_convert_db_name" and "st_select_lex::add_table_to_list"
      
      But when replication is enabled dabase names and table names
      are reassigned once again as per the events that are received
      from the binlog without checking for "lower_case_table_names=2".
      
      For example if the database name is "TestME" when the table
      is opened locally on windows a new table cache entry is
      created "testme.testnumberone" and when opened through replication
      another table cache entry "TestME.testnumberone" is created.
      Because of this problem users will not be able see the latest
      updates. "Flush Tables" flushes both the cache entries hence
      they are able to see the updates.
      
      Fix:
      ===
      Existing code checks only for "if (lower_case_table_names == 1)".
      This has been replaced with "if (lower_case_table_names)".

    modified:
      sql/log_event.cc
=== modified file 'mysql-test/collections/default.release.in'
--- a/mysql-test/collections/default.release.in	2012-11-21 13:23:34 +0000
+++ b/mysql-test/collections/default.release.in	2013-01-21 10:00:18 +0000
@@ -4,7 +4,7 @@
 # include default.daily
 # include default.weekly
 
-perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=debug      --vardir=var-debug --skip-rpl --report-features --debug-server
+perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=debug      --vardir=var-debug --skip-rpl --report-features --debug-server --unit-tests
 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=normal     --vardir=var-normal --report-features
 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=ps         --vardir=var-ps --ps-protocol
 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=funcs1+ps  --vardir=var-funcs_1_ps --suite=funcs_1  --ps-protocol

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk branch (bjorn.munch:5400 to 5401) Bjorn Munch21 Feb