An error occurred fetching the project authors.
  1. 21 Mar, 2020 1 commit
  2. 16 Mar, 2020 1 commit
    • Vladislav Vaintroub's avatar
      MDEV-18439 · 96b472c0
      Vladislav Vaintroub authored
      It did not work, eventhough the default for Windows was changed to 1
      for the corresponding system variable.
      This be because  test_flags was zeroed mysql_init_variables.
      
      The patch fixes this glitch.
      96b472c0
  3. 14 Mar, 2020 1 commit
  4. 05 Feb, 2020 1 commit
  5. 02 Dec, 2019 1 commit
  6. 28 Oct, 2019 1 commit
  7. 14 Oct, 2019 1 commit
  8. 02 Oct, 2019 1 commit
  9. 30 Sep, 2019 1 commit
  10. 12 Sep, 2019 1 commit
    • Jan Lindström's avatar
      MDEV-20505: Server crash on startup beacuse of bad wsrep configuration · 9bacc9d0
      Jan Lindström authored
      Problem was that if user used bad wsrep configuration
      we call unireg_abort and in wsrep case there is check
      to wsrep_server_state that might not yet be initialized.
      Fixed by checking that wsrep_server_state is initialized
      before checking it's state.
      
      Changes to be committed:
      	modified:   sql/mysqld.cc
      	modified:   sql/wsrep_server_state.h
      9bacc9d0
  11. 01 Sep, 2019 1 commit
    • Monty's avatar
      Updated mtr files to support different compiled in options · 9cba6c5a
      Monty authored
      This allows one to run the test suite even if any of the following
      options are changed:
      - character-set-server
      - collation-server
      - join-cache-level
      - log-basename
      - max-allowed-packet
      - optimizer-switch
      - query-cache-size and query-cache-type
      - skip-name-resolve
      - table-definition-cache
      - table-open-cache
      - Some innodb options
      etc
      
      Changes:
      - Don't print out the value of system variables as one can't depend on
        them to being constants.
      - Don't set global variables to 'default' as the default may not
        be the same as the test was started with if there was an additional
        option file. Instead save original value and reset it at end of test.
      - Test that depends on the latin1 character set should include
        default_charset.inc or set the character set to latin1
      - Test that depends on the original optimizer switch, should include
        default_optimizer_switch.inc
      - Test that depends on the value of a specific system variable should
        set it in the test (like optimizer_use_condition_selectivity)
      - Split subselect3.test into subselect3.test and subselect3.inc to
        make it easier to set and reset system variables.
      - Added .opt files for test that required specfic options that could
        be changed by external configuration files.
      - Fixed result files in rockdsb & tokudb that had not been updated for
        a while.
      9cba6c5a
  12. 30 Aug, 2019 1 commit
  13. 29 Aug, 2019 1 commit
    • Marko Mäkelä's avatar
      MDEV-20425 Implement Boolean debug build option debug_assert · e50b2bdb
      Marko Mäkelä authored
      Commit 536215e3 in MariaDB Server 10.3.1
      introduced the compiler flag (not cmake option) DBUG_ASSERT_AS_PRINTF
      that converts DBUG_ASSERT in non-debug builds into printouts.
      
      For debug builds, it could be useful to be able to convert DBUG_ASSERT
      into a warning or error printout, to allow execution to continue.
      This would allow debug builds to be used for reproducing hard failures
      that occur with release builds.
      
      my_assert: A Boolean flag (set by default), tied to the new option
      debug_assert that is available on debug builds only.
      When set, DBUG_ASSERT() will invoke assert(), like it did until now.
      When unset, DBUG_ASSERT() will invoke fprintf(stderr, ...)
      with the file name, line number and assertion expression.
      e50b2bdb
  14. 31 Jul, 2019 1 commit
  15. 15 Jul, 2019 1 commit
    • Jan Lindström's avatar
      MDEV-19746: Galera test failures because of wsrep_slave_threads identification · ec49976e
      Jan Lindström authored
      Problem was that tests select INFORMATION_SCHEMA.PROCESSLIST processes
      from user system user and empty state. Thus, there is not clear
      state for slave threads.
      
      Changes:
      - Added new status variables that store current amount of applier threads
      (wsrep_applier_thread_count) and rollbacker threads
      (wsrep_rollbacker_thread_count). This will make clear how many slave threads
      of certain type there is.
      - Added THD state "wsrep applier idle" when applier slave thread is
      waiting for work. This makes finding slave/applier threads easier.
      - Added force-restart option for mtr to always restart servers between tests
      to avoid race on start of the test
      - Added wait_condition_with_debug to wait until the passed statement returns
      true, or the operation times out. If operation times out, the additional error
      statement will be executed
      
      Changes to be committed:
      	new file:   mysql-test/include/force_restart.inc
      	new file:   mysql-test/include/wait_condition_with_debug.inc
      	modified:   mysql-test/mysql-test-run.pl
      	modified:   mysql-test/suite/galera/disabled.def
      	modified:   mysql-test/suite/galera/r/MW-336.result
      	modified:   mysql-test/suite/galera/r/galera_kill_applier.result
      	modified:   mysql-test/suite/galera/r/galera_var_slave_threads.result
      	new file:   mysql-test/suite/galera/t/MW-336.cnf
      	modified:   mysql-test/suite/galera/t/MW-336.test
      	modified:   mysql-test/suite/galera/t/galera_kill_applier.test
      	modified:   mysql-test/suite/galera/t/galera_parallel_autoinc_largetrx.test
      	modified:   mysql-test/suite/galera/t/galera_parallel_autoinc_manytrx.test
      	modified:   mysql-test/suite/galera/t/galera_var_slave_threads.test
      	modified:   mysql-test/suite/wsrep/disabled.def
      	modified:   mysql-test/suite/wsrep/r/variables.result
      	modified:   mysql-test/suite/wsrep/t/variables.test
      	modified:   sql/mysqld.cc
      	modified:   sql/wsrep_mysqld.cc
      	modified:   sql/wsrep_mysqld.h
      	modified:   sql/wsrep_thd.cc
      	modified:   sql/wsrep_var.cc
      ec49976e
  16. 27 Jun, 2019 1 commit
    • Marko Mäkelä's avatar
      MDEV-19845: Adaptive spin loops · 042fc295
      Marko Mäkelä authored
      Starting with the Intel Skylake microarchitecture, the PAUSE
      instruction latency is about 140 clock cycles instead of earlier 10.
      On AMD processors, the latency could be 10 or 50 clock cycles,
      depending on microarchitecture.
      
      Because of this big range of latency, let us scale the loops around
      the PAUSE instruction based on timing results at server startup.
      
      my_cpu_relax_multiplier: New variable: How many times to invoke PAUSE
      in a loop. Only defined for IA-32 and AMD64.
      
      my_cpu_init(): Determine with RDTSC the time to run 16 PAUSE instructions
      in two unrolled loops according, and based on the quicker of the two
      runs, initialize my_cpu_relax_multiplier. This form of calibration was
      suggested by Mikhail Sinyavin from Intel.
      
      LF_BACKOFF(), ut_delay(): Use my_cpu_relax_multiplier when available.
      
      ut_delay(): Define inline in my_cpu.h.
      
      UT_COMPILER_BARRIER(): Remove. This does not seem to have any effect,
      because in our ut_delay() implementation, no computations are being
      performed inside the loop. The purpose of UT_COMPILER_BARRIER() was to
      prohibit the compiler from reordering computations. It was not
      emitting any code.
      042fc295
  17. 22 Jun, 2019 1 commit
  18. 17 Jun, 2019 1 commit
    • Georg Richter's avatar
      MDEV-14101 Provide an option to select TLS protocol version · d1308013
      Georg Richter authored
      Server and command line tools now support option --tls_version to specify the
      TLS version between client and server. Valid values are TLSv1.0, TLSv1.1, TLSv1.2, TLSv1.3
      or a combination of them. E.g.
      
      --tls_version=TLSv1.3
      --tls_version=TLSv1.2,TLSv1.3
      
      In case there is a gap between versions, the lowest version will be used:
      --tls_version=TLSv1.1,TLSv1.3 -> Only TLSv1.1 will be available.
      
      If the used TLS library doesn't support the specified TLS version, it will use
      the default configuration.
      
      Limitations:
      
      SSLv3 is not supported. The default configuration doesn't support TLSv1.0 anymore.
      TLSv1.3 protocol currently is only supported by OpenSSL 1.1.0 (client and server) and
      GnuTLS 3.6.5 (client only).
      
      Overview of TLS implementations and protocols
      
      Server:
      
      +-----------+-----------------------------------------+
      | Library   | Supported TLS versions                  |
      +-----------+-----------------------------------------+
      | WolfSSL   | TLSv1.1, TLSv1,2                        |
      +-----------+-----------------------------------------+
      | OpenSSL   | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3    |
      +-----------+-----------------------------------------+
      | LibreSSL  | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3    |
      +-----------+-----------------------------------------+
      
      Client (MariaDB Connector/C)
      +-----------+-----------------------------------------+
      | Library   | Supported TLS versions                  |
      +-----------+-----------------------------------------+
      | GnuTLS    | (TLSv1.0), TLSv1.1, TLSv1.2, TLSv1.3    |
      +-----------+-----------------------------------------+
      | Schannel  | (TLSv1.0), TLSv1.1, TLSv1.2             |
      +-----------+-----------------------------------------+
      | OpenSSL   | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3    |
      +-----------+-----------------------------------------+
      | LibreSSL  | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3    |
      +-----------+-----------------------------------------+
      d1308013
  19. 06 Jun, 2019 1 commit
    • Monty's avatar
      Support skip-plugin-load · b83aff56
      Monty authored
      - --disable-plugin-load or --skip-plugin-load will now reset plugin load
        list. Needed for future changes to mtr tests
      b83aff56
  20. 03 Jun, 2019 1 commit
    • Monty's avatar
      Ensure that tests and programs can restore variables · 76f14be1
      Monty authored
      - --default-character-set can now be disabled in mysqldump
      - --skip-resolve can be be disabled in mysqld
      - mysql_client_test now resets global variables it changes
      - mtr couldn't handle [mysqldump] in config files (wrong regexp used)
      76f14be1
  21. 22 May, 2019 1 commit
  22. 17 May, 2019 1 commit
  23. 14 May, 2019 1 commit
  24. 11 May, 2019 1 commit
  25. 07 May, 2019 2 commits
  26. 03 May, 2019 2 commits
    • Sergey Vojtovich's avatar
      Revert THD::THD(skip_global_sys_var_lock) argument · 779fb636
      Sergey Vojtovich authored
      Originally introduced by e972125f to avoid harmless wait for
      LOCK_global_system_variables in a newly created thread, which creation was
      initiated by system variable update.
      
      At the same time it opens dangerous hole, when system variable update
      thread already released LOCK_global_system_variables and ack_receiver
      thread haven't yet completed new THD construction. In this case THD
      constructor goes completely unprotected.
      
      Since ack_receiver.stop() waits for the thread to go down, we have to
      temporarily release LOCK_global_system_variables so that it doesn't
      deadlock with ack_receiver.run(). Unfortunately it breaks atomicity
      of rpl_semi_sync_master_enabled updates and makes them not serialized.
      
      LOCK_rpl_semi_sync_master_enabled was introduced to workaround the above.
      TODO: move ack_receiver start/stop into repl_semisync_master
      enable_master/disable_master under LOCK_binlog protection?
      
      Part of MDEV-14984 - regression in connect performance
      779fb636
    • Sergey Vojtovich's avatar
      Cleanup session tracker API · 2be28a91
      Sergey Vojtovich authored
      - Session_sysvars_tracker::server_init_check() -> sysvartrack_validate_value()
      - Session_sysvars_tracker::check_var_list()    -> sysvartrack_validate_value()
      
      - Session_sysvars_tracker::server_init_process() -> sysvartrack_global_update()
      - sysvartrack_reprint_value()                    -> sysvartrack_global_update()
      
      - sysvartrack_value_len()       -> sysvartrack_session_value_ptr()
      - sysvartrack_value_construct() -> sysvartrack_session_value_ptr()
      
      - sysvartrack_update() -> Session_sysvars_tracker::update()
      - Session_tracker::server_boot_verify() -> session_tracker_init()
      - sysvar_tracker() -> /dev/null
      
      Part of MDEV-14984 - regression in connect performance
      2be28a91
  27. 02 May, 2019 1 commit
  28. 30 Apr, 2019 1 commit
  29. 02 Apr, 2019 1 commit
  30. 22 Mar, 2019 1 commit
  31. 13 Mar, 2019 2 commits
  32. 12 Mar, 2019 1 commit
    • Sergey Vojtovich's avatar
      MDEV-18450 Slaves wait shutdown · 3568427d
      Sergey Vojtovich authored
      The patches features an optional shutdown behavior to hold on until
      after all connected slaves have been sent the last binlogged event.
      The connected slave is one whose START SLAVE has been acknowledged and
      that was not stopped since that though it could be technically
      reconnecting in background.
      
      The solution therefore disallows killing the dump thread until is has
      found EOF of the latest binlog file.  It is up to the shutdown
      requester (DBA) to set up a sufficiently large shutdown timeout value
      for shudown to wait patiently until lagging behind slaves have been
      synchronized. On the other hand if a specific slave needs exclusion
      from synchronization the DBA would have to stop it manually which
      would terminate its dump thread.
      
      `mysqladmin shutdown' is extended with a `--wait_for_all_slaves' option
      which translates to `SHUTDOW WAIT FOR ALL SLAVES' sql query
      to enable the feature on the client side.
      
      The patch also performs a small refactoring of the server shutdown
      around close_connections() to introduce kill thread phases which
      are two as of current.
      3568427d
  33. 06 Mar, 2019 2 commits
    • Sergey Vojtovich's avatar
      Adieu slave_list · 2b711d23
      Sergey Vojtovich authored
      slave_list was used to provide data for SHOW SLAVE HOSTS and
      Slaves_connected status variable.
      
      Introduced binlog_dump_thread_count which is exposed via Slaves_connected
      (replaces slave_list.records).
      
      Store Slave_info on THD and access it by iterating server_threads
      (replaces slave_list).
      
      Added:
      THD::slave_info
      binlog_dump_thread_count
      show_slave_hosts_callback()
      
      Removed:
      slave_list
      SLAVE_LIST_CHUNK
      SLAVE_ERRMSG_SIZE
      slave_list_key()
      slave_info_free()
      init_slave_list()
      end_slave_list()
      all_slave_list_mutexes
      init_all_slave_list_mutexes()
      key_LOCK_slave_list
      LOCK_slave_list
      
      Moved:
      SLAVE_INFO -> Slave_info
      register_slave() -> THD::register_slave()
      unregister_slave() -> THD::unregister_slave()
      
      Also removed redundant end_slave() from close_connections(): it is called
      again soon afterwards by clean_up().
      
      Pre-requisite for clean MDEV-18450 solution.
      2b711d23
    • Sergey Vojtovich's avatar
      Cleanup remnants of rpl_recovery_rank · 68c765d3
      Sergey Vojtovich authored
      68c765d3
  34. 04 Mar, 2019 1 commit
  35. 01 Mar, 2019 1 commit
  36. 26 Feb, 2019 1 commit