List:Commits« Previous MessageNext Message »
From:kevin.lewis Date:May 2 2012 8:03pm
Subject:bzr push into mysql-trunk branch (kevin.lewis:3759 to 3767)
View as plain text  
 3767 kevin.lewis@stripped	2012-05-02
      Full 5980 patch.

    added:
      mysql-test/include/shutdown_mysqld.inc
      mysql-test/include/start_mysqld.inc
      mysql-test/r/partition_innodb_tablespace.result
      mysql-test/suite/innodb/r/innodb-tablespace.result
      mysql-test/suite/innodb/t/innodb-tablespace.test
      mysql-test/suite/parts/r/partition_reorganize_innodb.result
      mysql-test/suite/parts/r/partition_reorganize_myisam.result
      mysql-test/suite/parts/t/partition_reorganize_innodb.test
      mysql-test/suite/parts/t/partition_reorganize_myisam.test
      mysql-test/t/partition_innodb_tablespace.test
    modified:
      include/my_base.h
      mysql-test/r/mysqlshow.result
      mysql-test/suite/innodb/r/innodb-restart.result
      mysql-test/suite/innodb/r/innodb-system-table-view.result
      mysql-test/suite/innodb/r/innodb_16k.result
      mysql-test/suite/innodb/r/innodb_4k.result
      mysql-test/suite/innodb/r/innodb_8k.result
      mysql-test/suite/innodb/t/innodb-restart.test
      mysql-test/suite/innodb/t/innodb-system-table-view.test
      mysql-test/suite/innodb/t/innodb_16k.test
      mysql-test/suite/innodb/t/innodb_4k.test
      mysql-test/suite/innodb/t/innodb_8k.test
      mysql-test/suite/parts/r/partition_basic_symlink_innodb.result
      mysql-test/suite/parts/t/partition_basic_symlink_innodb.test
      mysys/my_handler_errors.h
      sql/ha_partition.cc
      sql/ha_partition.h
      sql/handler.cc
      sql/share/errmsg-utf8.txt
      sql/sql_partition.cc
      sql/sql_partition.h
      sql/sql_table.cc
      storage/innobase/dict/dict0boot.cc
      storage/innobase/dict/dict0crea.cc
      storage/innobase/dict/dict0dict.cc
      storage/innobase/dict/dict0load.cc
      storage/innobase/fil/fil0fil.cc
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/handler/ha_innodb.h
      storage/innobase/handler/handler0alter.cc
      storage/innobase/handler/i_s.cc
      storage/innobase/handler/i_s.h
      storage/innobase/include/db0err.h
      storage/innobase/include/dict0boot.h
      storage/innobase/include/dict0crea.h
      storage/innobase/include/dict0dict.h
      storage/innobase/include/dict0dict.ic
      storage/innobase/include/dict0load.h
      storage/innobase/include/dict0mem.h
      storage/innobase/include/fil0fil.h
      storage/innobase/include/os0file.h
      storage/innobase/include/read0read.h
      storage/innobase/include/row0merge.h
      storage/innobase/include/trx0trx.h
      storage/innobase/lock/lock0lock.cc
      storage/innobase/os/os0file.cc
      storage/innobase/row/row0merge.cc
      storage/innobase/row/row0mysql.cc
      storage/innobase/srv/srv0start.cc
      storage/innobase/sync/sync0sync.cc
      storage/innobase/ut/ut0ut.cc
 3766 Vasil Dimov	2012-05-02
      Remove duplicate definition of OS_SYNC_TIME_EXCEEDED and fix
      typo in the macro os_event_wait_time().

    modified:
      storage/innobase/include/os0sync.h
 3765 Tatjana Azundris Nuernberg	2012-05-02 [merge]
      auto-merge

    added:
      unittest/gunit/my_error-t.cc
    modified:
      include/my_sys.h
      mysys/my_error.c
      sql/log.h
      unittest/gunit/CMakeLists.txt
 3764 Marko Mäkelä	2012-05-02
      Non-functional changes.
      
      dict_mem_table_create(): Remove bogus comment about clustered tables,
      which were never implemented in InnoDB.
      
      create_table_def(): Remove unnecessary type casts.

    modified:
      storage/innobase/dict/dict0mem.cc
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/include/dict0mem.h
 3763 Rohit Kalhans	2012-05-02 [merge]
      WL#5597: Using batch operations when there is no index in RBR
      
      CONTEXT
      -------
      
      With RBR, if a table has no indexes, the slave does a full table scan for each
      row changed (i.e. updated or deleted). This can be extremely time consuming
      when there is a high number of rows to be updated.
      
      SOLUTION
      ---------
      
      When there is a table without a PK or an INDEX, create a temporary in-memory
      index (e.g. in-memory hash table) and store the rows to be update in it. Then for
      each row in the table, check if the row exists in the hash table. If there is a
      match, do the operation, i.e. update or delete.

    removed:
      mysql-test/suite/rpl/r/rpl_row_find_row_debug.result
      mysql-test/suite/rpl/t/rpl_row_find_row_debug.test
    added:
      mysql-test/extra/rpl_tests/rpl_row_idempotency.test
      mysql-test/include/rpl_hash_scan_assertion.inc
      mysql-test/suite/rpl/r/rpl_row_hash_scan.result
      mysql-test/suite/rpl/r/rpl_row_hash_scan_sanity.result
      mysql-test/suite/rpl/t/rpl_row_hash_scan.test
      mysql-test/suite/rpl/t/rpl_row_hash_scan_sanity.test
      mysql-test/suite/sys_vars/r/slave_rows_search_algorithms_basic.result
      mysql-test/suite/sys_vars/t/slave_rows_search_algorithms_basic.test
    modified:
      mysql-test/collections/default.daily
      mysql-test/extra/rpl_tests/rpl_record_compare.test
      mysql-test/r/mysqld--help-notwin.result
      mysql-test/r/mysqld--help-win.result
      mysql-test/suite/rpl/r/rpl_bug26395.result
      mysql-test/suite/rpl/r/rpl_parallel_start_stop.result
      mysql-test/suite/rpl/r/rpl_relayrotate.result
      mysql-test/suite/rpl/r/rpl_row_idempotency.result
      mysql-test/suite/rpl/r/rpl_row_rec_comp_innodb.result
      mysql-test/suite/rpl/r/rpl_row_rec_comp_myisam.result
      mysql-test/suite/rpl/t/rpl_bug26395.test
      mysql-test/suite/rpl/t/rpl_parallel_start_stop.test
      mysql-test/suite/rpl/t/rpl_relayrotate.test
      mysql-test/suite/rpl/t/rpl_row_idempotency.test
      sql/handler.h
      sql/log_event.cc
      sql/log_event.h
      sql/mysqld.cc
      sql/mysqld.h
      sql/rpl_utility.cc
      sql/rpl_utility.h
      sql/sql_class.h
      sql/sys_vars.cc
      storage/blackhole/ha_blackhole.h
 3762 Norvald H. Ryeng	2012-05-02
      Bug#13330886 TOO MANY ROWS WITH ALL|ANY
      
      Post push fix. Changed test result for test explain_json_validate.

    modified:
      mysql-test/suite/explain_json_validate/r/explain_json_validate.result
 3761 Tor Didriksen	2012-05-02
      Followup patch for Bug#13945257 NEW COMPILATION ERRORS/WARNINGS WITH XCODE 4.3.2
      
      Do not allocate anything on the heap in Fake_TABLE,
      since TABLE::~TABLE() is not virtual.

    modified:
      unittest/gunit/fake_table.h
 3760 Norvald H. Ryeng	2012-05-02
      Bug#13330886 TOO MANY ROWS WITH ALL|ANY
      
      Queries with subquery predicates containing ALL may return incorrect
      results due to a faulty query transformation. E.g.:
      
      SELECT * FROM t1 WHERE b > ALL (SELECT a FROM t2);
      
      is rewritten
      
      SELECT * FROM t1 WHERE b > (SELECT MAX(a) FROM t2);
      
      This transformation in Item_in_subselect::single_value_transformer()
      is correct only when t2.a doesn't contain NULL values. If the subquery
      result contains at least one non-NULL value, MAX(a) returns the
      largest non-NULL value, and this value is compared with b. However,
      (b > ALL(result that contains at least one NULL)) should return UNKNOWN
      unless there is a value in the subquery result that is greater than b,
      in which case the condition should return FALSE.
      
      Fix: Disable this transformation for ALL subquery predicates that may
      return NULL.
      
      This patch also enables the transformation for queries that are not
      top-level if both the left-hand and right-hand expressions are
      non-nullable.
     @ mysql-test/include/subquery.inc
        Add test case for bug #13330886.
     @ mysql-test/r/explain.result
        Changes to EXPLAIN EXTENDED for queries using ALL.
     @ mysql-test/r/explain_json_all.result
        Changes to EXPLAIN for queries using ALL.
     @ mysql-test/r/explain_json_none.result
        Changes to EXPLAIN for queries using ALL.
     @ mysql-test/r/subquery_all.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_all_bka.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_all_bka_nixbnl.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_nomat_nosj.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_nomat_nosj_bka.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_nomat_nosj_bka_nixbnl.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_none.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_none_bka.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ mysql-test/r/subquery_none_bka_nixbnl.result
        Add test case for bug #13330886. Changes to EXPLAIN EXTENDED for
        queries using ALL.
     @ sql/item_subselect.cc
        Disable MIN/MAX transformation for ALL if the subquery may return
        NULL.

    modified:
      mysql-test/include/subquery.inc
      mysql-test/r/explain.result
      mysql-test/r/explain_json_all.result
      mysql-test/r/explain_json_none.result
      mysql-test/r/subquery_all.result
      mysql-test/r/subquery_all_bka.result
      mysql-test/r/subquery_all_bka_nixbnl.result
      mysql-test/r/subquery_nomat_nosj.result
      mysql-test/r/subquery_nomat_nosj_bka.result
      mysql-test/r/subquery_nomat_nosj_bka_nixbnl.result
      mysql-test/r/subquery_none.result
      mysql-test/r/subquery_none_bka.result
      mysql-test/r/subquery_none_bka_nixbnl.result
      sql/item_subselect.cc
 3759 Andrei Elkin	2012-04-30
      Bug#14018843 - FAULTY LOGICS IN MTS_DEBUG_CONCURRENT_ACCESS HANDLING
      
      Introduced to verify MTS concurrent behavior `mts_debug_concurrent_access'
      debug flag was unnecessaliry checked by IO thread which leads to a hang like. 
      
         http://pb2.no.oracle.com/web.py?template=mysql_show_test_failure&search=yes&push_id=3396783&test_id=3400389&test_run=rpl_binlog-debug-big&test_suite=rpl&test_case=rpl_mts_debug
      
      Fixed with excluding other than MTS worker threads 
      from checking the debug flag.
      
      One-liner fixes suppressing a warning in rpl_filter_tables_not_exist is piggybacked.
     @ mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result
        results got updated.
     @ mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test
        a necessary unsafe suppression on the master side is added.

    modified:
      mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result
      mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test
      sql/rpl_info_table.cc

Diff too large for email (20870 lines, the limit is 10000).
No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk branch (kevin.lewis:3759 to 3767) kevin.lewis3 May