1. 26 Apr, 2016 1 commit
    • Monty's avatar
      Fix for MDEV-9679 main.delayed fails sporadically · 0dbc6649
      Monty authored
      Problem was that notify_shared_lock() didn't abort an insert delayed thread
      if it was in thr_upgrade_write_delay_lock().
      
      ALTER TABLE first takes a weak_mdl_lock, then a thr_lock and then tries to upgrade
      the mdl_lock.
      Delayed insert thread first takes a mdl lock followed by a
      thr_upgrade_write_delay_lock()
      This caused insert delay to wait for alter table in thr_lock, while
      alter table was waiting for the mdl lock by insert delay.
      
      Fixed by telling mdl to run thr_lock_abort() for the insert delay thread table.
      We also set thd->mysys_var->abort to 1 for the delay thread when it's killed
      by alter table to ensure it doesn't ever get locked in thr_lock.
      0dbc6649
  2. 25 Apr, 2016 1 commit
    • Monty's avatar
      Fixed failing test cases and compiler warnings · f6cc7f1b
      Monty authored
      - Fixed wait condition in kill_processlist-6619
      - Updated Ssl_chiper for openssl tests
      - Added supression for valgrinds when using libcrypto
      - Fixed wrong argument to pthread_mutex in server_audit.c when compiling with debug
      - Adding missing debug_sync_update() to debug_sync.h
      - Added initializers to some variables and fixed error handling in jsonudf.cpp
      - Fixed cluster_filter_unpack_varchar which doesn't have a stable index type.
      - Updated compiler_warnings.supp
      f6cc7f1b
  3. 24 Apr, 2016 12 commits
  4. 22 Apr, 2016 4 commits
    • Sergey Vojtovich's avatar
      MDEV-9283 - Debian: the Lintian complains about "shlib-calls-exit" in · 250a89cf
      Sergey Vojtovich authored
                  ha_oqgraph.so
      
      exit() was called by Judy error handler. This patch overrides Judy error handler
      so that it calls abort() instead of exit().
      250a89cf
    • Sergey Vojtovich's avatar
      MDEV-8889 - Assertion `next_insert_id == 0' failed in handler::ha_external_lock · 994030c0
      Sergey Vojtovich authored
      There was a race condition between delayed insert thread and connection thread
      actually performing INSERT/REPLACE DELAYED. It was triggered by concurrent
      INSERT/REPLACE DELAYED and statements that flush the same table either
      explicitely or implicitely (like FLUSH TABLE, ALTER TABLE, ...).
      
      This race condition was caused by a gap in delayed thread shutdown logic,
      which allowed concurrent connection running INSERT/REPLACE DELAYED to change
      essential data consequently leaving table in semi-consistent state.
      
      Specifically query thread could decrease "tables_in_use" reference counter in
      this gap, causing delayed insert thread to shutdown without releasing auto
      increment and table lock.
      
      Fixed by extending condition so that delayed insert thread won't shutdown
      until there're locked tables.
      
      Also removed volatile qualifier from tables_in_use and stacked_inserts since
      they're supposed to be protected by mutexes.
      994030c0
    • Jan Lindström's avatar
      Improve error diagnostics on I/O errors. If node->name is NULL · 298e1d3f
      Jan Lindström authored
      try to use space->name instead.
      298e1d3f
    • Jan Lindström's avatar
      MDEV-9918: [ERROR] mysqld got signal 11 during ALTER TABLE `name` COLUMN ADD · 628bc576
      Jan Lindström authored
      Problem was that in-place online alter table was used on a table
      that had mismatch between MySQL frm file and InnoDB data dictionary.
      Fixed so that traditional "Copy" method is used if the MySQL frm
      and InnoDB data dictionary is not consistent.
      628bc576
  5. 21 Apr, 2016 1 commit
  6. 20 Apr, 2016 1 commit
    • Sergey Vojtovich's avatar
      MDEV-9281 - Debian: the Lintian complains about "shlib-calls-exit" in handlersocket.so · 072ca71d
      Sergey Vojtovich authored
      MDEV-9278 - Debian: the Lintian complains about "shlib-calls-exit" in ha_spider.so
      
      Handlersocket handles errors in a way that it aborts program execution. In most
      cases it is done via abort(). One exception was host/service resolution failure,
      which was aborted with exit().
      
      As a workaround replaced this exit() with abort() for symmetry with other error
      handling.
      072ca71d
  7. 04 Apr, 2016 1 commit
  8. 24 Mar, 2016 1 commit
  9. 21 Mar, 2016 11 commits
  10. 18 Mar, 2016 1 commit
  11. 17 Mar, 2016 3 commits
  12. 16 Mar, 2016 1 commit
  13. 15 Mar, 2016 1 commit
  14. 12 Mar, 2016 1 commit
    • Elena Stepanova's avatar
      MDEV-9713 Sporadic test failure: sys_vars.innodb_buffer_pool_load_now_basic · 0125e588
      Elena Stepanova authored
      It could have happened that one of previous tests already executed
      buffer pool dump and set the status variable value, so when it's been
      checked, the check passes too early, before the dump starts and
      the dump file is created. See more detailed explanation in MDEV-9713.
      
      Fixed by waiting for the current time to change in case it equals
      to the timestamp in the status variable, and then checking that
      the status variable not only matches the expected pattern, but also
      differs from the previous value, whatever it was.
      0125e588