- 28 Dec, 2018 5 commits
-
-
Sergey Vojtovich authored
Added lf_hash_size() macro, so that callers don't need to use atomic operations.
-
Sergey Vojtovich authored
Simplified worker threads completion waiting, made it use std::atomic.
-
Sergey Vojtovich authored
This is follow-up patch. Avoid calling constructor/destructor twice.
-
Marko Mäkelä authored
This is a follow-up to commit 9581c4a8 which added a memcpy() call to rtr_copy_buf(), to copy rw_lock_t debug_latch. This could emit a warning. A cleaner approach is to make buf_block_t::debug_latch a pointer, so that we can avoid copying it. An even cleaner approach would be to redesign the InnoDB SPATIAL INDEX code so that the function rtr_copy_buf() is not needed at all.
-
Marko Mäkelä authored
-
- 27 Dec, 2018 31 commits
-
-
Vladislav Vaintroub authored
avoid calling SSL_get_verify_mode() and SSL_get_verify_depth(), since yassl implementation of the function accesses the acceptor context, which can be freed on FLUSH SSL command.
-
Sergey Vojtovich authored
purge_sys_t::m_enabled transition to std::atomic. enabled_latched() doesn't make much sense: in this particular case it is as fast as atomic load. The sole caller has to reload it's value anyway, due to rw_lock_x_lock(&purge_sys.latch) issuing acquire memory barrier. When purge_sys_t::close() is reached, m_enabled must be false, otherwise we may free members, which are still in use by the coordinator thread.
-
Sergey Vojtovich authored
purge_sys_t::m_paused transition to Atomic_counter. paused_latched() doesn't make much sense: in this particular case it is as fast as atomic load. The sole caller has to reload it's value anyway, due to rw_lock_x_lock(&purge_sys.latch) issuing acquire memory barrier.
-
Sergey Vojtovich authored
onlineddl_rowlog_rows transition to Atomic_counter.
-
Sergey Vojtovich authored
os_aio_validate_count transition to Atomic_counter.
-
Sergey Vojtovich authored
ibuf_t::n_merges transition to Atomic_counter.
-
Sergey Vojtovich authored
dict_table_t::n_foreign_key_checks_running transition to Atomic_counter.
-
Sergey Vojtovich authored
trx_sys_t::rseg_history_len transition to Atomic_counter.
-
Sergey Vojtovich authored
fil_space_t::redo_skipped_count transition to Atomic_counter.
-
Sergey Vojtovich authored
srv_conc_t.n_active and srv_conc_t.n_waiting transition to Atomic_counter.
-
Sergey Vojtovich authored
btr_defragment_compression_failures, btr_defragment_failures and btr_defragment_count transition to Atomic_counter.
-
Sergey Vojtovich authored
os_thread_count transition to Atomic_counter.
-
Sergey Vojtovich authored
Almost trivial rw_lock_t::waiters transition. Since C++11 doesn't seem to allow mixed (atomic and non-atomic) access to atomic variables, we have to perform atomic initialisation.
-
Sergey Vojtovich authored
Almost trivial rw_lock_t::lock_word transition. Since C++11 doesn't seem to allow mixed (atomic and non-atomic) access to atomic variables, we have to perform atomic initialisation. Also made previously broken code in gis0sea.cc even more broken. It is unclear how it was supposed to work and what exactly it was supposed to do.
-
Sergey Vojtovich authored
os_total_large_mem_allocated transition to Atomic_counter.
-
Sergey Vojtovich authored
Replaced simple_atomic_counter with Atomic_counter.
-
Sergey Vojtovich authored
Trivial buf_tmp_buffer_t::reserved transition. Relaxed memory order looks suspicious when used by methods that have acquire()/release() names. Especially if intention is to transfer some variable or memory region from one thread to another. Or is memory ordering guaranteed by something else, e.g. some mutex that protects broader range of acquire/release functionality?
-
Sergey Vojtovich authored
Almost trivial TTASEventMutex::m_lock_word transition. Since C++11 doesn't seem to allow mixed (atomic and non-atomic) access to atomic variables, we have to perform all accesses atomically.
-
Sergey Vojtovich authored
Almost trivial TTASMutex::m_lock_word transition. Since C++11 doesn't seem to allow mixed (atomic and non-atomic) access to atomic variables, we have to perform all accesses atomically.
-
Sergey Vojtovich authored
dict_table_t::n_ref_count transition to Atomic_counter.
-
Sergey Vojtovich authored
Trivial srv_running transition.
-
Sergey Vojtovich authored
trx_t::n_ref transition to Atomic_counter.
-
Sergey Vojtovich authored
rw_trx_hash_element_t::no transition to Atomic_counter. Since C++11 doesn't seem to allow mixed (atomic and non-atomic) access to atomic variables, we have to perform atomic initialisation.
-
Sergey Vojtovich authored
Almost trivial trx_sys_t::m_rw_trx_hash_version transition. Since C++11 doesn't seem to allow mixed (atomic and non-atomic) access to atomic variables, we have to perform atomic initialisation.
-
Sergey Vojtovich authored
trx_sys_t::m_max_trx_id transition to Atomic_counter. Since C++11 doesn't seem to allow mixed (atomic and non-atomic) access to atomic variables, we have to perform atomic initialisation.
-
Sergey Vojtovich authored
fil_validate_count transition to Atomic_counter.
-
Sergey Vojtovich authored
Added Atomic_counter class to replace big set of atomic operations uses in InnoDB, as well as in the server.
-
Marko Mäkelä authored
The fix for MDEV-17901 did not cover cases where the AUTO_INCREMENT column was not dropped, but some other columns before it were. commit_cache_norebuild(): Revert the MDEV-17901 fix. dict_index_t::clear_instant_alter(): Update table->persistent_autoinc.
-
Marko Mäkelä authored
innobase_instant_try(): Only try to update the hidden metadata record if the number of columns is changing (increasing) or a metadata BLOB is being added due to permuting or dropping columns for the first time. dict_table_t::instant_column(), ha_innobase_inplace_ctx::instant_column(): Return whether the metadata record needs to be updated.
-
Teodor Mircea Ionita authored
-
Alexander Barkov authored
MDEV-17959 Assertion `opt_bootstrap || mysql_parse_status || thd->lex->select_stack_top == 0' failed in parse_sql upon DELETE HISTORY under ORACLE mode
-
- 26 Dec, 2018 1 commit
-
-
Teodor Mircea Ionita authored
Ubuntu 14.04 Trusty is LTS until April 2019 and since we are approaching that, upgrade to Xenial which is LTS until April 2021. One bonus of this upgrade is that the Travis Xenial virtual images have a much bigger disk size, thus no need to limit ccache below the default of 5G anymore. Also had to remove linux/clang-8 toolchain testing since llvm-toolchain-xenial is not listed at: https://github.com/travis-ci/apt-source-safelist/blob/master/ubuntu.json And fails with: Disallowing sources: llvm-toolchain-xenial ... E: Unable to locate package clang-8 E: Unable to locate package llvm-8-dev
-
- 25 Dec, 2018 3 commits
-
-
Shinnok authored
10.4 travis - newer compilers, ignore common clang warnings
-
Alexander Barkov authored
MDEV-18072 Assertion `is_null() == item->null_value || conv' failed in Timestamp_or_zero_datetime_native_null::Timestamp_or_zero_datetime_native_null upon query with GROUP BY
-
Alexander Barkov authored
MDEV-18070 Assertion `nanoseconds <= 1000000000' failed in Temporal::add_nanoseconds_ssff with TIME_ROUND_FRACTIONAL The previous patch was erroneously marked as MDEV-18072. It was actualy for MDEV-18070.
-