1. 29 Aug, 2014 1 commit
    • Sergey Vojtovich's avatar
      Backport from 10.0: · 40497577
      Sergey Vojtovich authored
      MDEV-6450 - MariaDB crash on Power8 when built with advance tool
                  chain
      
      InnoDB mutex_exit() function calls __sync_test_and_set() to release
      the lock. According to manual this function is supposed to create
      "acquire" memory barrier whereas in fact we need "release" memory
      barrier at mutex_exit().
      
      The problem isn't repeatable with gcc because it creates
      "acquire-release" memory barrier for __sync_test_and_set().
      ATC creates just "acquire" barrier.
      
      Fixed by creating proper barrier at mutex_exit() by using
      __sync_lock_release() instead of __sync_test_and_set().
      40497577
  2. 25 Aug, 2014 1 commit
    • Sergei Golubchik's avatar
      MDEV-6601 Assertion `!thd->in_active_multi_stmt_transa ction() ||... · dd25e7f0
      Sergei Golubchik authored
      MDEV-6601 Assertion `!thd->in_active_multi_stmt_transa ction() || thd->in_multi_stmt_transaction_mode()' failed on executing a stored procedure with commit
      
      Don't restore the whole of thd->server_status after a routine invocation,
      only restore SERVER_STATUS_CURSOR_EXISTS and SERVER_STATUS_LAST_ROW_SENT,
      as --ps --embedded needs.
      In particular, don't restore SERVER_STATUS_IN_TRANS.
      dd25e7f0
  3. 19 Aug, 2014 1 commit
    • Michael Widenius's avatar
      MDEV-6450 - MariaDB crash on Power8 when built with advance tool chain · 5569132f
      Michael Widenius authored
      Part of this work is based on Stewart Smitch's memory barrier and lower priori
      patches for power8.
      
      - Added memory syncronization for innodb & xtradb for power8.
      - Added HAVE_WINDOWS_MM_FENCE to CMakeList.txt
      - Added os_isync to fix a syncronization problem on power
      - Added log_get_lsn_nowait which is now used srv_error_monitor_thread to ensur
        if log mutex is locked.
      
      All changes done both for InnoDB and Xtradb
      5569132f
  4. 13 Aug, 2014 2 commits
  5. 12 Aug, 2014 2 commits
  6. 05 Aug, 2014 1 commit
  7. 12 Aug, 2014 1 commit
  8. 03 Aug, 2014 3 commits
  9. 02 Aug, 2014 1 commit
    • Sergei Golubchik's avatar
      mysql-5.5.39 merge · 1c6ad62a
      Sergei Golubchik authored
      ~40% bugfixed(*) applied
      ~40$ bugfixed reverted (incorrect or we're not buggy)
      ~20% bugfixed applied, despite us being not buggy
      (*) only changes in the server code, e.g. not cmakefiles
      1c6ad62a
  10. 01 Aug, 2014 5 commits
  11. 31 Jul, 2014 3 commits
  12. 30 Jul, 2014 2 commits
    • Michael Widenius's avatar
      Fix for MDEV-6493: Assertion `table->file->stats.records > 0 || error'... · 53643152
      Michael Widenius authored
      Fix for MDEV-6493: Assertion `table->file->stats.records > 0 || error' failure, or 'Invalid write' valgrind warnings, or crash on scenario with Aria table, view, LOCK TABLES
      
      This bug only happens in case of paritioned tables used in LOCK TABLES and implicit_commit() was called
      (as part of trying to execute a CREATE TABLE withing lock tables)
      
      The problem was that Aria could not move the tables from one transaction to the new one, as thd->open_tables contained
      a partitioned tables and not an Aria table.
      
      Fix:
      - Store a list of all open tables that are part of a share in share->open_tables
      - In maria::implict_commit() use transaction->used_tables & share->open_tables to find out which tables
        was part of the current transaction instead of using thd->open_tables, which may contain partitioned tables.
      
      
      mysql-test/suite/maria/maria_partition.result:
        Added test case
      mysql-test/suite/maria/maria_partition.test:
        Added test case
      storage/maria/ha_maria.cc:
        Use trn->used tables and share->open_tables to find out which tables was part of the current transaction instead of using thd->open_tables.
      storage/maria/ma_close.c:
        Remove closed table from share->open_list
      storage/maria/ma_open.c:
        Add table to share->open_list
      storage/maria/ma_state.c:
        Added comment
      storage/maria/maria_def.h:
        Added share->open_list, a list of all tables that is using this share.
      53643152
    • Michael Widenius's avatar
      Fixed some compiler warnings · a1c1700b
      Michael Widenius authored
      a1c1700b
  13. 29 Jul, 2014 3 commits
  14. 28 Jul, 2014 4 commits
  15. 27 Jul, 2014 1 commit
  16. 26 Jul, 2014 1 commit
  17. 27 Jul, 2014 1 commit
  18. 26 Jul, 2014 1 commit
    • Jan Lindström's avatar
      Fix InnoDB: Assertion failure in thread 2868898624 in file buf0lru.c line 1000 · 8ae26740
      Jan Lindström authored
      InnoDB: Failing assertion: mutex_own(&buf_pool->LRU_list_mutex)
      
      and
      
      InnoDB: Assertion failure in thread 2868898624 in file buf0lru.c line 1077
      InnoDB: Failing assertion: mutex_own(&buf_pool->LRU_list_mutex)
      
      Analysis: Function buf_LRU_free_block might release LRU_list_mutex on
      same cases to avoid mutex order problems, we need to take it back 
      before accessing list. 
      8ae26740
  19. 25 Jul, 2014 1 commit
  20. 24 Jul, 2014 1 commit
  21. 23 Jul, 2014 3 commits
  22. 25 Jul, 2014 1 commit