1. 11 Apr, 2018 2 commits
  2. 10 Apr, 2018 7 commits
  3. 09 Apr, 2018 7 commits
  4. 08 Apr, 2018 4 commits
    • Vladislav Vaintroub's avatar
      MDEV-15707 : deadlock in Innodb IO code, caused by change buffering. · 7b16291c
      Vladislav Vaintroub authored
      In async IO completion code, after reading a page,Innodb can wait for
      completion of other bufferpool reads.
      This is for example what happens if change-buffering is active.
      
      Innodb on Windows could deadlock, as it did not have dedicated threads
      for processing change buffer asynchronous reads.
      
      The fix for that is to have windows now has the same background threads,
      including dedicated thread for ibuf, and log AIOs.
      
      The ibuf/read completions are now dispatched to their threads with
      PostQueuedCompletionStatus(), the write and log completions are processed
      in thread where they arrive.
      7b16291c
    • Jan Lindström's avatar
      MDEV-13549: Galera test failures · 8bb40f24
      Jan Lindström authored
      Disable more occasionally failing test cases.
      	galera.galera_lock_table
      	galera.galera_gra_log
      	galera.MW-44
      	galera.lp1376747
      	galera.lp1376747-2
      	galera.galera_pc_ignore_sb
      8bb40f24
    • Jan Lindström's avatar
      MDEV-15806: Test failure on galera.galera_parallel_simple · 1568950a
      Jan Lindström authored
      Make sure DDL's (create tables) are replicated before continuing to
      lock table.
      1568950a
    • Jan Lindström's avatar
      MDEV-13549: Galera test failures · c4b1a57b
      Jan Lindström authored
      Disable occasionally failing test cases
      	pxc-421
      	query_cache
      	galera_parallel_simple
      c4b1a57b
  5. 07 Apr, 2018 6 commits
  6. 06 Apr, 2018 12 commits
    • Jan Lindström's avatar
    • Daniele Sciascia's avatar
      MDEV-13549 Fix test galera.galera_wsrep_desync_wsrep_on · 7925cdff
      Daniele Sciascia authored
      The test tends to fail if many parallel instances of it are executed:
      
      ```
      mysqltest: At line 23: query 'ALTER TABLE t1 ADD PRIMARY KEY (f1)' failed:
      1317: Query execution was interrupted
      ```
      
      The `ALTER` fails because it is BF aborted due to an earlier `INSERT SELECT`
      that is being applied:
      
      ```
      INSERT INTO t1 (f1) SELECT ...
      
      --connection node_2
      SET GLOBAL wsrep_desync = TRUE;
      SET SESSION wsrep_on = FALSE;
      
      ALTER TABLE t1 ADD PRIMARY KEY (f1);
      
      SET SESSION wsrep_on = TRUE;
      SET GLOBAL wsrep_desync = FALSE;
      ```
      
      And because the `ALTER` is executed with `wsrep_on = OFF`, it does not
      run in total order isolation.
      To avoid the problem it must be ensured that the `ALTER` only after the
      large `INSERT SELECT` is done. To do so it is sufficient to issue
      `SELECT COUNT(*) FROM t1;` from `node_2` before turning off wsrep.
      The `SELECT` will trigger `wsrep_sync_wait` and proceed only after the
      `INSERT SELECT` from node_1 is done.
      7925cdff
    • Marko Mäkelä's avatar
      Fix a compilation error · 8325d71f
      Marko Mäkelä authored
      8325d71f
    • Jan Lindström's avatar
      MDEV-15566: System tablespace does not easily key rotate to unencrypted · 81075d45
      Jan Lindström authored
      Problem was that key rotation from encrypted to unecrypted was skipped
      when encryption is disabled (i.e. set global innodb-encrypt-tables=OFF).
      
      fil_crypt_needs_rotation
              If encryption is disabled (i.e. innodb-encrypt-tables=off)
      	and there is tablespaces using default encryption (e.g.
      	system tablespace) that are still encrypted state we need
      	to rotate them from encrypted state to unencrypted state.
      81075d45
    • Jan Lindström's avatar
      MDEV-13549: Galera test failures · 3be6cef5
      Jan Lindström authored
      Fix test case galera_toi_ddl_nonconflicting as we need to wait
      until both alter tables are finished on that Galera node.
      3be6cef5
    • Sergey Vojtovich's avatar
      MDEV-15291 - OQGraph fails to build on FreeBSD · 400a8eb6
      Sergey Vojtovich authored
      Boost includes sys/param.h on FreeBSD, which in turn defines setbit()
      macro. This macro is conflicting with open_query::judy_bitset::setbit().
      
      Reordered includes such that oqgraph_judy.h never sees this macro.
      Also removed duplicate includes of graphcore-config.h, which is included
      by graphcore-graph.h/oqgraph_shim.h/oqgraph_thunk.h.
      400a8eb6
    • Marko Mäkelä's avatar
      MDEV-14705: Follow-up fixes · 3498a656
      Marko Mäkelä authored
      buf_flush_remove(): Disable the output for now, because we
      certainly do not want this after every page flush on shutdown.
      It must be rate-limited somehow. There already is a timeout
      extension for waiting the page cleaner to exit in
      logs_empty_and_mark_files_at_shutdown().
      
      log_write_up_to(): Use correct format.
      
      srv_purge_should_exit(): Move the timeout extension to the
      appropriate place, from one of the callers.
      3498a656
    • Jan Lindström's avatar
      MDEV-13549: Galera test failures · d61ed5dd
      Jan Lindström authored
      Fix test case galera.pxc-421 to reset auto_increment_offset
      correctly.
      d61ed5dd
    • Daniel Black's avatar
      MDEV-14705: slow innodb startup/shutdown can exceed systemd timeout · 1479273c
      Daniel Black authored
      Use systemd EXTEND_TIMEOUT_USEC to advise systemd of progress
      
      Move towards progress measures rather than pure time based measures.
      
      Progress reporting at numberious shutdown/startup locations incuding:
      * For innodb_fast_shutdown=0 trx_roll_must_shutdown() for rolling back incomplete transactions.
      * For merging the change buffer (in srv_shutdown(bool ibuf_merge))
      * For purging history, srv_do_purge
      
      Thanks Marko for feedback and suggestions.
      1479273c
    • Daniel Black's avatar
      MDEV-14705: Speed up InnoDB shutdown · e7f4e61f
      Daniel Black authored
      Suggested by Marko on github pr #576
      
      buf_all_freed only needs to be called once, not 3 times.
      
      buf_all_freed will always return TRUE if it returns.
      It will crash if any page was not flushed so its effectively
      an assert anyway.
      
      The following calls are likely redundant and could be removed:
      
      		fil_flush_file_spaces(FIL_TYPE_TABLESPACE);
      		fil_flush_file_spaces(FIL_TYPE_LOG);
      e7f4e61f
    • Marko Mäkelä's avatar
      MDEV-14705: Do not rollback on InnoDB shutdown · 76ec37f5
      Marko Mäkelä authored
      row_undo_step(): If fast shutdown has been requested, abort the
      rollback of any non-DDL transactions. Starting with MDEV-12323,
      we aborted the rollback of recovered transactions. These
      transactions would be rolled back on subsequent server startup.
      
      trx_roll_report_progress(): Renamed from trx_roll_must_shutdown(),
      now that the shutdown check has been moved to the only caller.
      76ec37f5
    • Jan Lindström's avatar
      Fix out of array access. · 3a6283cb
      Jan Lindström authored
      3a6283cb
  7. 05 Apr, 2018 2 commits
    • Jan Lindström's avatar
      MDEV-13549: Galera test failures · afbd45a7
      Jan Lindström authored
      Enable tests that pass on 10.1:
             galera_var_auto_inc_control_on
             galera_var_retry_autocommit
             pxc-421
             lp1376747-2
             lp1376747
             galera_toi_ddl_nonconflicting
             galera_parallel_simple
             galera_admin
             galera_pc_ignore_sb
             galera_lock_table
             galera_unicode_identifiers
             galera.galera_gcs_fc_limit
             galera.galera_gtid
      afbd45a7
    • Jan Lindström's avatar
      MDEV-13549: Galera test failures · 6449f055
      Jan Lindström authored
      Fix test case MW-44 by disabling Galera replication of MyISAM
      tables (mysql.general_log especially) to avoid MDL lock
      wait later.
      6449f055