1. 06 Feb, 2014 1 commit
    • Michael Widenius's avatar
      Fixed errors and warnings found by buildbot · 313f18be
      Michael Widenius authored
      
      mysql-test/r/lowercase_table2.result:
        Updated result
        (The change happend because we don't try to open the table anymore as part of create table)
      mysql-test/suite/rpl/r/create_or_replace_mix.result:
        Fixed result file
      mysql-test/suite/rpl/r/create_or_replace_row.result:
        Fixed result file
      mysql-test/suite/rpl/r/create_or_replace_statement.result:
        Fixed result file
      mysql-test/suite/rpl/t/create_or_replace.inc:
        Drop open temporary table
      mysys/my_delete.c:
        Added missing newline
      plugin/metadata_lock_info/mysql-test/metadata_lock_info/r/user_lock.result:
        Fixed result
        (Lock names was before off by one. Was corrected by my previous patch)
      sql/sql_select.cc:
        Fixed compiler warnings by adding missing casts
      storage/connect/ha_connect.cc:
        Fixed compiler warnings
      storage/innobase/os/os0file.cc:
        Fixed compiler warnings
      storage/xtradb/btr/btr0btr.cc:
        Fixed compiler warnings
      storage/xtradb/handler/ha_innodb.cc:
        removed not used function
      strings/ctype-uca.c:
        Fixed compiler warnings
      support-files/compiler_warnings.supp:
        Added suppression for warnings that are wrong or are not serious andthat we don't plan to fix.
      313f18be
  2. 05 Feb, 2014 6 commits
    • Michael Widenius's avatar
      MDEV-5602: CREATE OR REPLACE obtains stricter locks than the connection had before · 1695fc45
      Michael Widenius authored
      mysql-test/r/create_or_replace.result:
        Added test case
      mysql-test/t/create_or_replace.test:
        Added test case
      sql/sql_base.cc:
        Downgrade locks in LOCK TABLES + CREATE TABLE OR REPLACE
      sql/sql_table.cc:
        Downgrade locks in LOCK TABLES + CREATE TABLE OR REPLACE
      1695fc45
    • Michael Widenius's avatar
      0557de84
    • Michael Widenius's avatar
      Automatic merge · 10001c8e
      Michael Widenius authored
      10001c8e
    • Michael Widenius's avatar
      Replication changes for CREATE OR REPLACE TABLE · 5426facd
      Michael Widenius authored
      - CREATE TABLE is by default executed on the slave as CREATE OR REPLACE
      - DROP TABLE is by default executed on the slave as DROP TABLE IF NOT EXISTS
      
      This means that a slave will by default continue even if we try to create
      a table that existed on the slave (the table will be deleted and re-created) or
      if we try to drop a table that didn't exist on the slave.
      This should be safe as instead of having the slave stop because of an inconsistency between
      master and slave, it will fix the inconsistency.
      Those that would prefer to get a stopped slave instead for the above cases can set slave_ddl_exec_mode to STRICT. 
      
      - Ensure that a CREATE OR REPLACE TABLE which dropped a table is replicated
      - DROP TABLE that generated an error on master is handled as an identical DROP TABLE on the slave (IF NOT EXISTS is not added in this case)
      - Added slave_ddl_exec_mode variable to decide how DDL's are replicated
      
      New logic for handling BEGIN GTID ... COMMIT from the binary log:
      
      - When we find a BEGIN GTID, we start a transaction and set OPTION_GTID_BEGIN
      - When we find COMMIT, we reset OPTION_GTID_BEGIN and execute the normal COMMIT code.
      - While OPTION_GTID_BEGIN is set:
        - We don't generate implict commits before or after statements
        - All tables are regarded as transactional tables in the binary log (to ensure things are executed exactly as on the master)
      - We reset OPTION_GTID_BEGIN also on rollback
      
      This will help ensuring that we don't get any sporadic commits (and thus new GTID's) on the slave and will help keep the GTID's between master and slave in sync.
      
      
      mysql-test/extra/rpl_tests/rpl_log.test:
        Added testing of mode slave_ddl_exec_mode=STRICT
      mysql-test/r/mysqld--help.result:
        New help messages
      mysql-test/suite/rpl/r/create_or_replace_mix.result:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/r/create_or_replace_row.result:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/r/create_or_replace_statement.result:
        Testing replication of create or replace
      mysql-test/suite/rpl/r/rpl_gtid_startpos.result:
        Test must be run in slave_ddl_exec_mode=STRICT as part of the test depends on that DROP TABLE should fail on slave.
      mysql-test/suite/rpl/r/rpl_row_log.result:
        Updated result
      mysql-test/suite/rpl/r/rpl_row_log_innodb.result:
        Updated result
      mysql-test/suite/rpl/r/rpl_row_show_relaylog_events.result:
        Updated result
      mysql-test/suite/rpl/r/rpl_stm_log.result:
        Updated result
      mysql-test/suite/rpl/r/rpl_stm_mix_show_relaylog_events.result:
        Updated result
      mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result:
        Updated result
      mysql-test/suite/rpl/t/create_or_replace.inc:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/t/create_or_replace_mix.cnf:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/t/create_or_replace_mix.test:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/t/create_or_replace_row.cnf:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/t/create_or_replace_row.test:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/t/create_or_replace_statement.cnf:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/t/create_or_replace_statement.test:
        Testing of CREATE OR REPLACE TABLE with replication
      mysql-test/suite/rpl/t/rpl_gtid_startpos.test:
        Test must be run in slave_ddl_exec_mode=STRICT as part of the test depends on that DROP TABLE should fail on slave.
      mysql-test/suite/rpl/t/rpl_stm_log.test:
        Removed some lines
      mysql-test/suite/sys_vars/r/slave_ddl_exec_mode_basic.result:
        Testing of slave_ddl_exec_mode
      mysql-test/suite/sys_vars/t/slave_ddl_exec_mode_basic.test:
        Testing of slave_ddl_exec_mode
      sql/handler.cc:
        Regard all tables as transactional in commit if OPTION_GTID_BEGIN is set.
        This is to ensure that statments are not commited too early if non transactional tables are used.
      sql/log.cc:
        Regard all tables as transactional in commit if OPTION_GTID_BEGIN is set.
        Also treat 'direct' log events as transactional (to get them logged as they where on the master)
      sql/log_event.cc:
        Ensure that the new error from DROP TABLE when trying to drop a view is treated same as the old one.
        Store error code that slave expects in THD.
        Set OPTION_GTID_BEGIN if we find a BEGIN.
        Reset OPTION_GTID_BEGIN if we find a COMMIT.
      sql/mysqld.cc:
        Added slave_ddl_exec_mode_options
      sql/mysqld.h:
        Added slave_ddl_exec_mode_options
      sql/rpl_gtid.cc:
        Reset OPTION_GTID_BEGIN if we record a gtid (safety)
      sql/sql_class.cc:
        Regard all tables as transactional in commit if OPTION_GTID_BEGIN is set.
      sql/sql_class.h:
        Added to THD: log_current_statement and slave_expected_error
      sql/sql_insert.cc:
        Ensure that CREATE OR REPLACE is logged if table was deleted.
        Don't do implicit commit for CREATE if we are under OPTION_GTID_BEGIN
      sql/sql_parse.cc:
        Change CREATE TABLE -> CREATE OR REPLACE TABLE for slaves
        Change DROP TABLE -> DROP TABLE IF EXISTS for slaves
        CREATE TABLE doesn't force implicit commit in case of OPTION_GTID_BEGIN
        Don't do commits before or after any statement if OPTION_GTID_BEGIN was set.
      sql/sql_priv.h:
        Added OPTION_GTID_BEGIN
      sql/sql_show.cc:
        Enhanced store_create_info() to also be able to handle CREATE OR REPLACE
      sql/sql_show.h:
        Updated prototype
      sql/sql_table.cc:
        Ensure that CREATE OR REPLACE is logged if table was deleted.
      sql/sys_vars.cc:
        Added slave_ddl_exec_mode
      sql/transaction.cc:
        Added warning if we got a GTID under OPTION_GTID_BEGIN
      5426facd
    • Elena Stepanova's avatar
      From MySQL 5.6.13 change log: · f68eac2e
      Elena Stepanova authored
      Unlike MyISAM, InnoDB does not support boolean full-text searches on 
      nonindexed columns, but this restriction was not enforced, resulting 
      in queries that returned incorrect results. (Bug #16434374)
      f68eac2e
    • Elena Stepanova's avatar
      Intentional change in logging · e068b7dc
      Elena Stepanova authored
      e068b7dc
  3. 04 Feb, 2014 10 commits
  4. 03 Feb, 2014 6 commits
  5. 02 Feb, 2014 3 commits
  6. 01 Feb, 2014 7 commits
  7. 31 Jan, 2014 5 commits
    • Sergei Golubchik's avatar
      2acc01b3
    • Sergei Golubchik's avatar
      5.5 merge · 59d9d08e
      Sergei Golubchik authored
      59d9d08e
    • Alexander Barkov's avatar
      merge 10.0 -> 10.0-connect · bec94a15
      Alexander Barkov authored
      bec94a15
    • Michael Widenius's avatar
      Fixes for CREATE_OR_REPLACE · 43f6e118
      Michael Widenius authored
      - MDEV-5587 Server crashes in Locked_tables_list::restore_lock on CREATE OR REPLACE .. SELECT under LOCK
      - MDEV-5586 Assertion `share->tdc.all_tables.is_empty() || remove_type != TDC_RT_REMOVE_ALL' fails in tdc_remove_table
      - MDEV-5588 Strange error on CREATE OR REPLACE table over an existing view
      
      mysql-test/r/create_or_replace.result:
        Added test cases
      mysql-test/r/lowercase_view.result:
        New error message
      mysql-test/r/merge.result:
        New error message
      mysql-test/r/multi_update.result:
        New error message
      mysql-test/r/subselect.result:
        New error message
      mysql-test/r/subselect_exists_to_in.result:
        New error message
      mysql-test/r/subselect_no_mat.result:
        New error message
      mysql-test/r/subselect_no_opts.result:
        New error message
      mysql-test/r/subselect_no_scache.result:
        New error message
      mysql-test/r/subselect_no_semijoin.result:
        New error message
      mysql-test/r/view.result:
        New error message
      mysql-test/suite/funcs_1/r/myisam_views-big.result:
        New error message
      mysql-test/t/create_or_replace.test:
        New tests
      mysql-test/t/view.test:
        New error message
      sql/share/errmsg-utf8.txt:
        Added new error message
      sql/sql_base.cc:
        Updated error message
        Do an automatic UNLOCK TABLES if we don't have any locked tables (safety fix)
      sql/sql_db.cc:
        Updated arguments
      sql/sql_load.cc:
        New error message
      sql/sql_parse.cc:
        Check that we are not using a table we are dropping and re-creating
      sql/sql_table.cc:
        Added parameter to mysql_rm_table_no_locks() to not automaticly do UNLOCK TABLES
        Added better error message if trying to drop a view with DROP TABLE
        Don't try to create something we select from
      sql/sql_table.h:
        Updated prototypes
      43f6e118
    • Alexander Barkov's avatar
      Adding a new command into CMakeLists.txt: · ce02738d
      Alexander Barkov authored
       SET(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
      to find header files from the bundled libraries
      (jemalloc, yassl, readline, pcre, etc)
      before the ones installed in the system.
      ce02738d
  8. 29 Jan, 2014 2 commits
    • Sergei Golubchik's avatar
      MDEV-5295 deb upgrade 5.5 to 10.0.6 does not work · a9c22c18
      Sergei Golubchik authored
      Use Breaks: not Conflicts:
      a9c22c18
    • Michael Widenius's avatar
      Fixed compiler warnings · 2410ecac
      Michael Widenius authored
      Made stopping of slave more robust
      Fixed tokudb test cases that gave different results between runs
      Speed up some slow tokudb tests by adding begin ... commit
      
      
      mysql-test/extra/rpl_tests/rpl_stop_slave.test:
        Ensure that slaves are properly synced before they are stopped.
        (Otherwise some tests results will be different between runs)
      storage/innobase/buf/buf0buf.cc:
        Fixed compiler warning
      storage/tokudb/mysql-test/tokudb/r/cluster_filter_unpack_varchar_and_int_hidden.result:
        Test case could be solved with index or range scan.
      storage/tokudb/mysql-test/tokudb/t/cluster_filter_unpack_varchar_and_int_hidden.test:
        Test case could be solved with index or range scan.
      storage/tokudb/mysql-test/tokudb_bugs/r/5733_innodb.result:
        Speed up test by adding begin...commit
      storage/tokudb/mysql-test/tokudb_bugs/r/5733_tokudb.result:
        Speed up test by adding begin...commit
      storage/tokudb/mysql-test/tokudb_bugs/t/5733_innodb.test:
        Speed up test by adding begin...commit
      storage/tokudb/mysql-test/tokudb_bugs/t/5733_tokudb.test:
        Speed up test by adding begin...commit
      storage/tokudb/mysql-test/tokudb_mariadb/r/compression.result:
        Added drop table (safety)
      storage/tokudb/mysql-test/tokudb_mariadb/t/compression.test:
        Added drop table (safety)
      2410ecac