1. 21 Feb, 2013 1 commit
    • unknown's avatar
      MDEV-26: Global transaction ID · c350177a
      unknown authored
       - Add first basic mysql-test-run test case which tests switch to new master
         using MASTER_GTID_POS=AUTO.
      
       - When we connect with GTID, do not use any old relay logs, as they may
         contain the wrong events or be corrupt after crash.
      
       - Fix old bug that fails replication if we receive a heartbeat event
         immediately after an event was omitted in the stream from the master.
      
       - Fix rpl_end to clear Gtid_Pos_Auto, to keep check_testcase happy.
      c350177a
  2. 19 Feb, 2013 2 commits
  3. 18 Feb, 2013 1 commit
    • unknown's avatar
      MDEV-26: Global transaction ID. · ff8676e0
      unknown authored
      Fix initial loading of mysql.rpl_slave_state, the code had several
      issues.
      
      Some very basic MTR stuff, more to come.
      ff8676e0
  4. 15 Feb, 2013 3 commits
  5. 14 Feb, 2013 1 commit
    • unknown's avatar
      MDEV-26: Global transaction ID. · cb5a5388
      unknown authored
      Slave now loads the GTID state from the master when connecting with
      old-style filename/offset position.
      
      This allows the user to use MASTER_GTID_POS=AUTO on next CHANGE MASTER
      without any other action needed.
      cb5a5388
  6. 13 Feb, 2013 1 commit
    • unknown's avatar
      MDEV-26. Intermediary commit. · d98e2ea9
      unknown authored
      Fix binlog_gtid_pos() to handle empty file name, and to not allow user
      to open arbitrary file on the system.
      d98e2ea9
  7. 11 Feb, 2013 1 commit
    • unknown's avatar
      MDEV-26. Intermediate commit. · 041f26d3
      unknown authored
      Implement binlog_gtid_pos() function. This will be used so that
      the slave can obtain the gtid position automatically from first
      connect with old-style position - then MASTER_GTID_POS=AUTO will
      work the next time. Can also be used by mysqldump --master-data
      to give the current gtid position directly.
      041f26d3
  8. 25 Jan, 2013 2 commits
    • unknown's avatar
      MDEV-26: Global transaction ID. · 132c2660
      unknown authored
      Ensure that mysql_install_db can create the rpl_slave_state with InnoDB storage engine.
      132c2660
    • unknown's avatar
      MDEV-26: Global transaction ID. · 1d357776
      unknown authored
      When starting slave, check binlog state in addition to mysql.rpl_slave.state.
      
      This allows to switch a previous master to be a slave directly
      with MASTER_GTID_POS=AUTO.
      1d357776
  9. 22 Jan, 2013 1 commit
  10. 15 Nov, 2012 1 commit
    • unknown's avatar
      MDEV-26: Global transaction id: Intermediate commit. · bdbce30d
      unknown authored
      Now slave can connect to master, sending start position as slave state
      rather than old-style binlog name/position.
      
      This enables to switch to a new master by changing just connection
      information, replication slave GTID state ensures that slave starts
      at the correct point in the new master.
      bdbce30d
  11. 07 Nov, 2012 1 commit
  12. 05 Nov, 2012 1 commit
  13. 23 Oct, 2012 2 commits
  14. 12 Mar, 2013 1 commit
  15. 07 Mar, 2013 1 commit
    • Sergey Petrunya's avatar
      Fix buildbot failure: · 62222eb5
      Sergey Petrunya authored
      Backport the code that runs cassandra.test only when Cassandra is 
      present and running from 10.0 to 10.0-base.
      62222eb5
  16. 27 Feb, 2013 1 commit
  17. 25 Feb, 2013 1 commit
  18. 15 Feb, 2013 1 commit
    • Michael Widenius's avatar
      Fixed BUG#51763 Can't delete rows from MEMORY table with HASH key · 7042dd38
      Michael Widenius authored
      mysql-test/suite/heap/heap.result:
        Added test case
      mysql-test/suite/heap/heap.test:
        Added test case
      storage/heap/hp_delete.c:
        Fixed that we don't change order of keys for the current key when we delete them from the hash table.
        Fixed that 'current_hash_ptr' is correct after heap_delete_key().
        Don't "reset current_hash_ptr" on delete; This will improve time a lot for delete of rows when not all rows matches the search criteria.
      7042dd38
  19. 07 Feb, 2013 2 commits
    • Elena Stepanova's avatar
      Fix for MDEV-4149, backport from 10.0: · a555ceb2
      Elena Stepanova authored
        committer: Sergei Golubchik <sergii@pisem.net> 
          fix for a valgrind builds. 
          my_alloca() cannot have MY_THREAD_SPECIFIC, because can be used 
          outside of the THD context. 
      a555ceb2
    • unknown's avatar
      MDEV-537 Make multi-column non-top level subqueries to be executed via index... · e648ff11
      unknown authored
      MDEV-537 Make multi-column non-top level subqueries to be executed via index (index/unique subquery)
                 instead of single_select_engine
      
      This task changes the IN-EXISTS rewrite for multi-column subqueries
      "(a, b) IN (select b, c ...)" to work in the same way as for
      single-column subqueries "a IN (select b ...) with respect to the
      injection of NULL-rejecting predicates.
       
      More specifically, the method
      Item_in_subselect::create_row_in_to_exists_cond()
      adds Item_is_not_null_test and Item_func_trig_cond only if the left
      IN operand can be NULL. Not having these predicates when not necessary,
      makes it possible to rewrite the subquery into a "unique_subquery" or
      "index_subquery" when there is a suitable index on the only
      subquery table.
      e648ff11
  20. 05 Feb, 2013 1 commit
  21. 04 Feb, 2013 3 commits
  22. 31 Jan, 2013 1 commit
  23. 30 Jan, 2013 2 commits
  24. 29 Jan, 2013 5 commits
  25. 28 Jan, 2013 3 commits
    • Vladislav Vaintroub's avatar
    • Sergei Golubchik's avatar
    • unknown's avatar
      Fix for MDEV-3948, and backport of the following collection of fixes and backports · f65e5841
      unknown authored
      from MariaDB 10.0.
        
      The bug in mdev-3948 was an instance of the problem fixed by Sergey's patch
      in 10.0 - namely that the range optimizer could change table->[read | write]_set,
      and not restore it.
        
      revno: 3471
      committer: Sergey Petrunya <psergey@askmonty.org>
      branch nick: 10.0-serg-fix-imerge
      timestamp: Sat 2012-11-03 12:24:36 +0400
      message:
        # MDEV-3817: Wrong result with index_merge+index_merge_intersection, InnoDB table, join, AND and OR conditions
        Reconcile the fixes from:
        #
        # guilhem.bichot@oracle.com-20110805143029-ywrzuz15uzgontr0
        # Fix for BUG#12698916 - "JOIN QUERY GIVES WRONG RESULT AT 2ND EXEC. OR
        # AFTER FLUSH TABLES [-INT VS NULL]"
        #
        # guilhem.bichot@oracle.com-20111209150650-tzx3ldzxe1yfwji6
        # Fix for BUG#12912171 - ASSERTION FAILED: QUICK->HEAD->READ_SET == SAVE_READ_SET
        # and
        #
        and related fixes from: BUG#1006164, MDEV-376:
        
        Now, ROR-merged QUICK_RANGE_SELECT objects make no assumptions about the values
        of table->read_set and table->write_set.
        Each QUICK_ROR_SELECT has (and had before) its own column bitmap, but now, all 
        QUICK_ROR_SELECT's functions that care: reset(), init_ror_merged_scan(), and 
        get_next()  will set table->read_set when invoked and restore it back to what 
        it was before the call before they return.
      
        This allows to avoid the mess when somebody else modifies table->read_set for 
        some reason.
      f65e5841