1. 21 Aug, 2013 1 commit
    • unknown's avatar
      MDEV-4120: UNIQUE indexes should not be considered for loose index scan · 33c66eb7
      unknown authored
        
      Currently the loose scan code in opt_range.cc considers all indexes as
      possible for the access method. Due to inexact statistics it may happen
      that a loose scan is selected over a unique index.
        
      This is clearly wrong since a "loose scan" over a unique index will read
      the same keys as a direct index scan, but the loose scan has more overhead.
        
      This task adds a rule to skip unique indexes for loose scan.
      33c66eb7
  2. 20 Aug, 2013 4 commits
  3. 19 Aug, 2013 1 commit
    • unknown's avatar
      · dafa4582
      unknown authored
      mysql-test/r/func_set.result:
        merge
      dafa4582
  4. 18 Aug, 2013 1 commit
    • Igor Babaev's avatar
      Fixed bug mdev-4918. · 7c85205d
      Igor Babaev authored
      The function SELECT_LEX::mark_const_derived() must take into account that
      in DELETE ... RETURNING join == NULL.
      7c85205d
  5. 16 Aug, 2013 1 commit
    • unknown's avatar
      MDEV-4820: Empty master does not give error for slave GTID position that does... · f0deff86
      unknown authored
      MDEV-4820: Empty master does not give error for slave GTID position that does not exist in the binlog
      
      The main bug here was the following situation:
      
      Suppose we set up a completely new master2 as an extra multi-master to an
      existing slave that already has a different master1 for domain_id=0. When the
      slave tries to connect to master2, master2 will not have anything that slave
      requests in domain_id=0, but that is fine as master2 is supposedly meant to
      serve eg. domain_id=1. (This is MDEV-4485).
      
      But suppose that master2 then actually starts sending events from
      domain_id=0. In this case, the fix for MDEV-4485 was incomplete, and the code
      would fail to give the error that the position requested by the slave in
      domain_id=0 was missing from the binlogs of master2. This could lead to lost
      events or completely wrong replication.
      
      The patch for this bug fixes this issue.
      
      In addition, it cleans up the code a bit, getting rid of the fake_gtid_hash in
      the code. And the error message when slave and master have diverged due to
      alternate future is clarified, as requested in the bug description.
      
      f0deff86
  6. 12 Aug, 2013 2 commits
  7. 08 Aug, 2013 5 commits
  8. 06 Aug, 2013 2 commits
  9. 05 Aug, 2013 7 commits
  10. 01 Aug, 2013 1 commit
  11. 31 Jul, 2013 2 commits
  12. 29 Jul, 2013 1 commit
    • Vladislav Vaintroub's avatar
      MDEV-4815 - allow multiple mysql_server_init() / mysql_server_end() in the... · 3ef0157d
      Vladislav Vaintroub authored
      MDEV-4815 - allow multiple  mysql_server_init() / mysql_server_end() in the same process, for embedded library.
      
      - Reset  static variables that are used to signal "init done"  for DBUG, in dbug_end()
      - Set string server variables to NULL after memory for the value is freed - avoids double free()
      - fix DBUG_ASSERTs that happened during reinitialization.
      3ef0157d
  13. 25 Jul, 2013 1 commit
    • Sergey Petrunya's avatar
      MDEV-4687: impossible where with < operation, but =-5 return one row · 9a780a59
      Sergey Petrunya authored
      - Let _ma_record_pos() set SEARCH_PART_KEY when doing a search on
        a prefix of a [unique] key.  Otherwise, _ma_search_pos() would 
        find the first key equal to search key, and assume it is also 
        the last one, which will make a wrong estimate of key's position.
      
        A wrong key position may cause min_pos > max_pos and records_in_range()
        will return 0, which will make the optimizer think it's an impossible 
        range while in fact it is not.
      9a780a59
  14. 19 Jul, 2013 1 commit
  15. 18 Jul, 2013 1 commit
  16. 17 Jul, 2013 3 commits
  17. 16 Jul, 2013 6 commits