maria:bb-10.6-danielblack-MDEV-29678-uninit

Last commit made on 2022-10-11
Get this branch:
git clone -b bb-10.6-danielblack-MDEV-29678-uninit https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.6-danielblack-MDEV-29678-uninit
Repository:
lp:maria

Recent commits

2c8d6be... by Daniel Black

MDEV-29678 Valgrind/MSAN uninitialised value errors upon PS with ALTER under ONLY_FULL_GROUP_BY

st_select_lex::init_query is called in the exectuion of EXECUTE
IMMEDIATE 'alter table ...'. so reset the initialization at the
same point we set join= 0.

15edd69... by Vladislav Vaintroub

MDEV-27943 Reduce overhead of attaching THD to OS thread, in threadpool

Avoid relatively expensive THD::store_globals() for every query in the
threadpool. Use a lighter version instead, that only resets some thread
local storage variables(THD, mysys, PSI), avoids some calculationms
and caches syscall gettid (Linux only) in a thread_local variable.

Also simplify Worker_context use, with RAII.

eae037c... by Sergei Golubchik

galera crashes in debug builds

after 6b685ea7b077 one can no longer violate the locking protocol
by invoking thd_get_ha_data() on some other thread without
protecting that with a mutex

5e7bafe... by Marko Mäkelä

MDEV-29710: Disable a timing-sensitive test on Valgrind

1b1501b... by Marko Mäkelä

Simplify purge a little

row_purge_step(): Process all available purge_node_t::undo_recs.

row_purge_end(): Replaced with purge_node_t::end().

TODO: Do we need a "query graph node" at all for purge?

ea1415c... by Marko Mäkelä

MDEV-22718: purge_sys.low_limit_no() is not protected

purge_sys_t::low_limit_no(): Adjust a comment. Actually, this
is protected after all.

TrxUndoRsegsIterator::set_next(): Reduce the critical section
of purge_sys.rseg->latch. Some purge_sys fields are accessed
only by the purge coordinator task.

97b0eee... by Marko Mäkelä

Cleanup: Add missing const

959ad2f... by Marko Mäkelä

MDEV-29612 ReadViewBase::snapshot() misses an optimization

ReadViewBase::snapshot(): In case m_low_limit_no==m_low_limit_id
and m_ids would include everything between that and m_up_limit_id,
set all fields to m_up_limit_id and clear m_ids, to speed up
changes_visible() and append().

rw_trx_hash_t::debug_iterator(): Add an assertion.

3e9e377... by Marko Mäkelä

MDEV-29590 Deadlock between ibuf_insert_to_index_page_low() and DDL

btr_page_reorganize_low(): Do not invoke lock_move_reorganize_page()
on a dummy index during change buffer merge. The ibuf.index page
latch that we are holding may block a DDL operation that is waiting
in ibuf_delete_for_discarded_space() while holding exclusive
lock_sys.latch. ibuf_insert_low() would refuse to buffer a change
if any locks exist for the index page.

8872d2e... by Marko Mäkelä

MDEV-29710: Disable a timing-sensitive test on Valgrind