1. 08 Apr, 2018 3 commits
  2. 07 Apr, 2018 4 commits
  3. 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
  4. 05 Apr, 2018 10 commits
  5. 04 Apr, 2018 1 commit
  6. 03 Apr, 2018 10 commits
    • Vicențiu Ciorbaru's avatar
      Merge branch '5.5' into 10.0 · 6a72b909
      Vicențiu Ciorbaru authored
      6a72b909
    • Daniele Sciascia's avatar
      MDEV-13549 Fix and re-enable MTR test galera.galera_gra_log · eeb68422
      Daniele Sciascia authored
      Test galera checks that a `GRA_x_x.log` file is created whenever
      wsrep applier fails to apply some replication event. The file
      contains the corresponding binlog event that failed to apply.
      The test creates a new file by concatenating a pre-recorded
      file containing the binlog header (see `std-data/binlog-header.log`)
      and the `GRA_x_x.log` file. The test then checks that the resulting
      file, containing the binlog header and the event that failed to
      apply, is correctly read by `mysqlbinlog` program.
      The test fails in MariaDB because the GRA_x_x.log file created
      by MariaDB already contains the binlog header (see MDEV-7867).
      This patch fixes/simplifies test `galera.galera_gra_log` so that
      it doesn't concatenate `std-data/binlog-header.log` with the
      `GRA_x_x.log` file. File `std-data/binlog-header.log` is deleted
      altoghether, because not used by any other test.
      eeb68422
    • Michael Gmelin's avatar
      Fix LibreSSL X509 (SSL) certificate hostname checking. · ed332962
      Michael Gmelin authored
      (Currently) LibreSSL doesn't calculate the string length of the hostname
      that's passed to X509_check_host automatically in case namelen/chklen is 0.
      This causes server certificate validation to fail when building MariaDB with
      LibreSSL.
      
      The proposed fix makes MariaDB determine the string length passed to
      X509_check_host. As there are no ill side-effects (OpenSSL's X509_check_host
      also simply calls strlen if namelen == 0, see also X509_check_host(3)), this
      wasn't wrapped in any #ifdef like constructs.
      
      Please see here for a proposed patch to modify LibreSSL's behavior:
      https://github.com/libressl-portable/openbsd/pull/87
      ed332962
    • Sergei Golubchik's avatar
      f5369faf
    • Sergei Golubchik's avatar
      compiler warning · df6197c8
      Sergei Golubchik authored
      warning: format '%p' expects argument of type 'void *', but argument 4 has type 'long int'
      df6197c8
    • Alexander Barkov's avatar
    • Daniel Black's avatar
      increase upper value of max_prepared_stmt_count to UINT32_MAX · 8ffbb825
      Daniel Black authored
      The upper 1M limit for max_prepared_stmt_count was set over 10 years
      ago. It doesn't suite current hardware and a sysbench oltp_read_write
      test with 512 threads will hit this limit.
      8ffbb825
    • Jan Lindström's avatar
      MDEV-14616: WSREP has not yet prepared node for application use error · 7ffa82b0
      Jan Lindström authored
      MariaDB adjustments.
      
      mysqltest.cc : Allow 12 error codes at --error
      
      wait_until_connected_again.inc: Replace numeric error codes with symbols
      
      mysqltest.test: Add error codes to test that tests too many errorcodes
      7ffa82b0
    • Daniele Sciascia's avatar
      MW-405 Remove wait_until_connected_again.inc from kill_galera.inc · 99237069
      Daniele Sciascia authored
      kill_galera.inc can no longer rely on wait_until_connected_again.inc.
      This is because wait_until_connected_again now tries to make sure
      that the server it is connected eventually transition to ready
      state. Whereas some tests may need to kill galera while the server
      is in a non-primary view.
      99237069
    • Daniele Sciascia's avatar
      MW-405 Adjust galera_pc_weight to new wait_until_connected_again · 54652161
      Daniele Sciascia authored
      Test galera_3nodes.galera_pc_weight started to fail because it
      expects to use wait_until_connected_again while remaining in
      non-primary view. Hopefully this is the only test which makes
      this assumption, and fortunately those wait_until_connected_again
      seem unnecessary, so this patch removes them.
      54652161