1. 18 Aug, 2015 3 commits
    • Monty's avatar
      Fixed failing tests and compiler warnings · dfac82e4
      Monty authored
      - UNINIT_VAR() was required for 4.8.3 on openSUSE 13.2
      dfac82e4
    • Monty's avatar
      Ensure that fields declared with NOT NULL doesn't have DEFAULT values if not... · 6b203426
      Monty authored
      Ensure that fields declared with NOT NULL doesn't have DEFAULT values if not specified and if not timestamp or auto_increment
      
      In original code, sometimes one got an automatic DEFAULT value in some cases, in other cases not.
      
      For example:
      create table t1 (a int primary key)      - No default
      create table t2 (a int, primary key(a))  - DEFAULT 0
      create table t1 SELECT ....              - Default for all fields, even if they where defined as NOT NULL
      ALTER TABLE ... MODIFY could sometimes add an unexpected DEFAULT value.
      
      The patch is quite big because we had some many test cases that used
      CREATE ... SELECT or CREATE ... (...PRIMARY KEY(xxx)) which doesn't have an automatic DEFAULT anymore.
      
      Other things:
      - Removed warnings from InnoDB when waiting from semaphore (got this when testing things with --big)
      6b203426
    • Monty's avatar
      MDEV-8475 stale .TMM file causes MyiSAM and Aria engine to stop serving the table · 92fd6583
      Monty authored
      Issue was two fold (both in MyISAM and Aria)
      - optimize and repair failed if there was an old .TMM file around. As optimized and repair are protected against multiple execution, I decided to change so that we just truncate the file if it exists.
      - I had missed to check for error condition if creation of the temporary index file failed. This caused the strange behaviour that it looked as if optimized would have worked once.
      92fd6583
  2. 24 Jul, 2015 1 commit
  3. 23 Jul, 2015 2 commits
  4. 22 Jul, 2015 2 commits
  5. 21 Jul, 2015 1 commit
    • Jan Lindström's avatar
      MDEV-8501: encryption.create_or_replace fails in buildbot on P8 builders · 62b5a561
      Jan Lindström authored
      Analysis: There is race between drop table and encryption threads that
      could cause encryption thread to enter mutex that has been already
      released.
      
      Fix: When destroying crypt_data first enter the mutex and set crypt data
      unavailable, then release the memory and clean up the data. This should
      make the race more unprobable. Additionally, added big_test for
      create_or_replace as it could fail testcase timeout
      if you have slow I/O (tested that testcase passes with --mem).
      62b5a561
  6. 20 Jul, 2015 5 commits
  7. 19 Jul, 2015 4 commits
  8. 17 Jul, 2015 1 commit
  9. 16 Jul, 2015 2 commits
    • Monty's avatar
      Fix for MySQL bug #77448 Inconsistent handling of RAND() in WHERE and HAVING · 0ad00c66
      Monty authored
      Problem was that for queries of type:
      
      select rand() r, rand()  p, rand() = rand() from a having r = p
      
      The optimizer thought that r = p was same as rand() = rand() and this would always be true.
      
      The problem was that when testing if two expressions are equal, we didn't take into account no determinstic functions.
      
      The fix is to not compare non deterministic functions as equal.
      0ad00c66
    • Monty's avatar
      MDEV-8469 Add RESET MASTER TO x to allow specification of binlog file nr · 872a953b
      Monty authored
      Other things:
      - Avoid calling init_and_set_log_file_name() when opening binary log.
      - Remove newlines early when reading from index file.
      - Ensure that reset_logs() will work even if thd is 0 (Can happen on startup)
      - Added thd to sart_slave_threads() for better error handling.
      872a953b
  10. 15 Jul, 2015 1 commit
  11. 14 Jul, 2015 6 commits
  12. 13 Jul, 2015 1 commit
  13. 10 Jul, 2015 3 commits
  14. 09 Jul, 2015 2 commits
  15. 08 Jul, 2015 2 commits
  16. 07 Jul, 2015 2 commits
  17. 06 Jul, 2015 2 commits
    • Monty's avatar
      - Renaming variables so that they don't shadow others (After this patch one... · 7332af49
      Monty authored
      - Renaming variables so that they don't shadow others (After this patch one can compile with -Wshadow and get much fewer warnings)
      - Changed ER(ER_...) to ER_THD(thd, ER_...) when thd was known or if there was many calls to current_thd in the same function.
      - Changed ER(ER_..) to ER_THD_OR_DEFAULT(current_thd, ER...) in some places where current_thd is not necessary defined.
      - Removing calls to current_thd when we have access to thd
      
      Part of this is optimization (not calling current_thd when not needed),
      but part is bug fixing for error condition when current_thd is not defined
      (For example on startup and end of mysqld)
      
      Notable renames done as otherwise a lot of functions would have to be changed:
      - In JOIN structure renamed:
         examined_rows -> join_examined_rows
         record_count -> join_record_count
      - In Field, renamed new_field() to make_new_field()
      
      Other things:
      - Added DBUG_ASSERT(thd == tmp_thd) in Item_singlerow_subselect() just to be safe.
      - Removed old 'tab' prefix in JOIN_TAB::save_explain_data() and use members directly
      - Added 'thd' as argument to a few functions to avoid calling current_thd.
      7332af49
    • Nirbhay Choubey's avatar