1. 30 Nov, 2010 1 commit
    • unknown's avatar
      RB://518 approved by Jimmy Yang and Sunny bains · ced213fb
      unknown authored
          
      Code cleanup after changes for Bug 56628.  The general approach for 
      InnoDB is to make a reference to each enum value whenever it is used in a
      switch statement.  In addition, no default case should be used for switch 
      statements on enum types.  This assures that if there is ever any change 
      in the enum values, the switch will need to change to reflect it since a 
      compiler warning will occur.  In this case, the enum row_type is declared 
      in handler.h and could be changed for another storage engine.  If so, a 
      warning will occur in the InnoDB build.  
      
      Other changes;
      * This patch uses 2 macros to help consolidate warning messages that
         need to occur twice in the single switch for row_format.
      * Using row_format as the variable name to distinguish it from the enum
        type.
      * Function declaration format correction.
      ced213fb
  2. 29 Nov, 2010 1 commit
  3. 28 Nov, 2010 1 commit
    • unknown's avatar
      BUG#54903 BINLOG statement toggles session variables · a9398ce0
      unknown authored
      When using BINLOG statement to execute rows log events, session variables
      foreign_key_checks and unique_checks are changed temporarily.  As each rows
      log event has their own special session environment and its own
      foreign_key_checks and unique_checks can be different from current session
      which executing the BINLOG statement. But these variables are not restored
      correctly after BINLOG statement. This problem will cause that the following
      statements fail or generate unexpected data.
      
      In this patch, code is added to backup and restore these two variables.
      So BINLOG statement will not affect current session's variables again.
      
      
      mysql-test/extra/binlog_tests/binlog.test:
        Add test to verify this patch.
      mysql-test/suite/binlog/r/binlog_row_binlog.result:
        Add test to verify this patch.
      mysql-test/suite/binlog/r/binlog_stm_binlog.result:
        Add test to verify this patch.
      sql/sql_binlog.cc:
        Add code to backup and restore thd->options.
      a9398ce0
  4. 27 Nov, 2010 1 commit
  5. 26 Nov, 2010 6 commits
    • Georgi Kodinov's avatar
      merge · 5b614179
      Georgi Kodinov authored
      5b614179
    • Alexander Barkov's avatar
      Bug#56639 Character Euro (0x88) not converted from cp1251 to utf8 · e4f5a1a8
      Alexander Barkov authored
      Problem: MySQL cp1251 did not support 'U+20AC EURO SIGN'
      which was assigned a few years ago to 0x88.
      
      Fix: adding mapping: 0x88 <-> U+20AC 
      
        @ mysql-test/include/ctype_8bit.inc
        New shared file to test 8bit character sets.
      
        @ mysql-test/r/ctype_cp1251.result
        @ mysql-test/t/ctype_cp1251.test
        Adding tests
      
        @ sql/share/charsets/cp1251.xml
        Adding mapping
      
        @ strings/ctype-extra.c
        Regenerating ctype-extra.c using strings/conf_to_src
        according to new cp1251.xml
      e4f5a1a8
    • Nirbhay Choubey's avatar
      Bug #54899 : --one-database option cannot handle DROP/CREATE DATABASE commands · 896c88ca
      Nirbhay Choubey authored
      After dropping and recreating the database specified along with --one-database
      option at command line, mysql client keeps filtering the statements even after
      the execution of a 'USE' command on the same database.
      
      --one-database option enables the filtering of statements when the current
      database is not the one specified at the command line. However, when the same
      database is dropped and recreated the variable (current_db) that holds the
      inital database name gets altered. This bug exploits the fact that current_db
      initially gets set to null value (0) when a 'use db_name' follows the recreation
      of same database db_name (speficied at the command line) and hence skip_updates
      gets set to 1, which inturn triggers the further filtering of statements.
      
      Fixed by making get_current_db() a no-op function when one_database is set,
      and hence, under that condition current_db will not get altered.
      Note, however the value of current_db can change when we execute 'connect'
      command with a differnet database to reconnect to the server, in which case,
      the behavior of --one-database will be formulated using this new database.
      
      
      client/mysql.cc:
        Bug #54899 : --one-database option cannot handle DROP/CREATE DATABASE commands
        
        Added an if statement at the beginnning of get_current_db() , which makes it
        a no-op function if one-database option is specified, and hence current_db
        remains unchanged.
        
        Changed the help message for one-database option to a more appropriate message
        as specified in mysql documentation.
      mysql-test/r/mysql.result:
        Added a test case for bug#54899 and some more test cases to
        check other one-database option related behaviors.
      mysql-test/t/mysql.test:
        Added a test case for bug#54899 and some more test cases to
        check other one-database option related behaviors.
      896c88ca
    • Bjorn Munch's avatar
      Bug #58515 Tests: use use exec echo, not write_file to write mysqld.1.expect · 037f433a
      Bjorn Munch authored
      Fixed as suggested in the .inc file and two tests
      Could not reproduce problem, but tested tests on Windows
      037f433a
    • Georgi Kodinov's avatar
      merge · c4116326
      Georgi Kodinov authored
      c4116326
    • Georgi Kodinov's avatar
      bumped up the version string. · c616270a
      Georgi Kodinov authored
      c616270a
  6. 25 Nov, 2010 4 commits
    • Bjorn Munch's avatar
      Bug #58482 mtr doesn't use suite names from individually specified test cases · 00c4a8f0
      Bjorn Munch authored
      It does work in general, the problem here was that the test name
      'alter_table' matches 'main.alter_table-big' which has already been found.
      Fixed by matching more explicitly (with/without suite name)
      00c4a8f0
    • Vasil Dimov's avatar
      Bug#47350 Support innodb plugin without separate shared object · d9cb0155
      Vasil Dimov authored
      Add a _commented_ workaround for Bug#47350. The full solution is tricky
      to get right as explained in the bug report. It is not worth the effort
      to extend the deprecated autotools framework to support conflicting
      plugins and would be too risky for MySQL 5.1 (GA).
      d9cb0155
    • Tatiana Azundris Nurnberg's avatar
      merge · e10bcdb2
      Tatiana Azundris Nurnberg authored
      e10bcdb2
    • Tatiana A. Nurnberg's avatar
      Assorted post-merge fixes, clean-up, integration, compat with 5.6. · 934ea4d1
      Tatiana A. Nurnberg authored
      43233/55794.
      
      mysql-test/r/change_user.result:
        Don't use -1 integer wrap around. It used to work, but now we do what's
        actually in the documentation. In tests, we now use DEFAULT or the
        numeral equivalent (as we do in the 5.6 tests).
      mysql-test/r/key_cache.result:
        Can't drop default key case is an error now, not a warning, for compatibility
        with 5.6.
      mysql-test/r/variables.result:
        Can't drop default key case is an error now, not a warning, for compatibility
        with 5.6.
      mysql-test/t/change_user.test:
        Don't use -1 integer wrap around. It used to work, but now we do what's
        actually in the documentation. In tests, we now use DEFAULT or the
        numeral equivalent (as we do in the 5.6 tests).
      mysql-test/t/key_cache.test:
        Can't drop default key case is an error now, not a warning, for compatibility
        with 5.6.
      mysql-test/t/variables.test:
        Can't drop default key case is an error now, not a warning, for compatibility
        with 5.6.
      sql/mysqld.cc:
        0 is a legal (albeit magic) value: "drop key cache."
      sql/set_var.cc:
        bound_unsigned() can go now, it was just a kludge until things are done
        The Right Way, which they are now.
        
        Can't drop default key case is an error now, not a warning, for compatibility
        with 5.6.
      tests/mysql_client_test.c:
        Don't use -1 integer wrap around. It used to work, but now we do what's
        actually in the documentation. In tests, we now use DEFAULT or the
        numeral equivalent (as we do in the 5.6 tests).
      934ea4d1
  7. 24 Nov, 2010 7 commits
  8. 23 Nov, 2010 2 commits
    • Bjorn Munch's avatar
      Bug #43418 MTR2: does not notice a memory leak occuring at shutdown of mysqld w/ --valgrind · f0d438d9
      Bjorn Munch authored
      Follow-up discussed with Reporter:
      Avoid hard shutdown after test failure, if caused by server log warning
        AND we are running valgrind
      More general pick-up of valgrind summaries, order may apparently vary
      Do exit(1) if we did find valgrind summary warnings
      f0d438d9
    • Sergey Glukhov's avatar
      Bug#56862 Execution of a query that uses index merge returns a wrong result · fb8b67cb
      Sergey Glukhov authored
      In case of low memory sort buffer QUICK_INDEX_MERGE_SELECT creates
      temporary file where is stores row ids which meet QUICK_SELECT ranges
      except of clustered pk range, clustered range is processed separately.
      In init_read_record we check if temporary file is used and choose
      appropriate record access method. It does not take into account that
      temporary file contains partial result in case of QUICK_INDEX_MERGE_SELECT
      with clustered pk range.
      The fix is always to use rr_quick if QUICK_INDEX_MERGE_SELECT
      with clustered pk range is used.
      
      
      mysql-test/suite/innodb/r/innodb_mysql.result:
        test case
      mysql-test/suite/innodb/t/innodb_mysql.test:
        test case
      mysql-test/suite/innodb_plugin/r/innodb_mysql.result:
        test case
      mysql-test/suite/innodb_plugin/t/innodb_mysql.test:
        test case
      sql/opt_range.h:
        added new method
      sql/records.cc:
        The fix is always to use rr_quick if QUICK_INDEX_MERGE_SELECT
        with clustered pk range is used.
      fb8b67cb
  9. 22 Nov, 2010 4 commits
  10. 20 Nov, 2010 1 commit
  11. 19 Nov, 2010 1 commit
  12. 18 Nov, 2010 1 commit
    • Georgi Kodinov's avatar
      Bug #50021: Windows standard configuration files are showing Linux · 4011015f
      Georgi Kodinov authored
       options/settings
       
       1. Changed the default value for socket on Windows to the windows
       default
       2. Removed hard-coded trailing slashes from innodb_data_home_dir
       and innodb_log_group_name_dir.
       3. Added extra backslashes to the innodb directory example
       4. Made the tempdir platform "dependent"
       5. Fixed the comments in the .ini files
       6. Removed the tmpdir from the templates and the scripts
      4011015f
  13. 19 Nov, 2010 1 commit
  14. 18 Nov, 2010 4 commits
  15. 17 Nov, 2010 2 commits
    • Bjorn Munch's avatar
      Bug #58257 mysqltest: in if(), ! $var with space is always false · 69f2d932
      Bjorn Munch authored
      Evaluation would start with the space and thus ignore the $
      Added while() to skip past white space
      69f2d932
    • Davi Arnaut's avatar
      Bug#57994: Compiler flag change build error : my_redel.c · 1f128a12
      Davi Arnaut authored
      Use __builtin_stpcpy only if the system supports stpcpy.
      This is necessary as in some cases a call to stpcpy will
      be emitted if the built-in can not optimized.
      
      include/m_string.h:
        The expansion of stpcpy (in glibc) causes warnings if the
        return value of strmov is not being used. Since stpcpy is
        a GNU extension and the expansion ends up using a built-in
        provided by GCC, use the compiler provided built-in directly
        when possible. Nonetheless, the C library must have stpcpy
        as a call be emitted if the built-in can not optimized.
      1f128a12
  16. 15 Nov, 2010 1 commit
  17. 14 Nov, 2010 1 commit
  18. 11 Nov, 2010 1 commit