maria:bb-10.6-MDEV-26782

Last commit made on 2023-04-21
Get this branch:
git clone -b bb-10.6-MDEV-26782 https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.6-MDEV-26782
Repository:
lp:maria

Recent commits

1ed6456... by Marko Mäkelä

fixup! 1451bc6522dec0d2a64f398577d3c4c3956c4dd0

34acddc... by Marko Mäkelä

MDEV-31084 assert(waiting) failed in TP_connection_generic::wait_end

buf_flush_wait_flushed(): Correct the logic for registering a wait
around buf_flush_wait() that
commit a091d6ac4e7d2d7873749e685943b3032ccfda57
recently broke.

ee710a8... by Marko Mäkelä

squash! 6035919cbdcca7cadab9f90c10c381db8b3c098b

trx_purge_truncate_rseg_history(): Relax the reuse condition.
If a cached undo log segment has been fully purged so far
and not reused yet, rseg.undo_cached should point to the
header page.

a2dbb9e... by Marko Mäkelä

squash! 6035919cbdcca7cadab9f90c10c381db8b3c098b

trx_purge_free_segment(): Fix the unsafe buffer pool usage.
FIXME: This belongs in a separate commit to 10.5.

trx_purge_truncate_rseg_history(): Relax a condition
that may be too strict.

2916274... by Marko Mäkelä

Merge 10.6

1451bc6... by Marko Mäkelä

MDEV-26827 fixup: buf_LRU_get_free_block() hangs

buf_LRU_get_free_block(): Always wake up the page cleaner if needed
before exiting the inner loop.

7e31a8e... by Marko Mäkelä

MDEV-26827 fixup: Fix os_aio_wait_until_no_pending_writes()

io_callback(): Process the request before releasing the write slot.
Before commit a091d6ac4e7d2d7873749e685943b3032ccfda57
when we had a duplicated counter for writes, either ordering was fine.
Now, correctness depends on os_aio_wait_until_no_pending_writes().

c21bc17... by Daniel Black

MDEV-30186: mtr: Use of uninitialized value $test_name in substitution

There is an assumption that when there are are no completed tests,
that means they are still running and then an attempt is made to
identify these tests as stalled.

The other possibility is however there are no tests that where run.

Test this early and then exit quickly and no later misunderstandings
need to be made.

f7791cc... by Daniel Black

Revert "MDEV-30186 Use of uninitialized value in substitution"

This reverts commit 0e737f78980fcfe83b05c27215eb3f5ede1ea473.

As noted by Andrew, this introduces race conditions in the setting
and using of the global $test_name_for_report.

3d589c4... by Marko Mäkelä

MDEV-26782 InnoDB temporary tablespace: reclaiming of free space does not work

The motivation of this change is to allow undo pages for temporary tables
to be marked free as often as possible, so that we can avoid buf_pool.LRU
eviction of undo pages that contain data that is no longer needed.
For temporary tables, no MVCC or purge of history is needed, and
reusing cached undo log pages might not help that much.

It is possible that this may cause some performance regression due to
more frequent allocation and freeing of undo log pages.

trx_write_serialisation_history(): Never cache temporary undo log pages.

trx_undo_reuse_cached(): Assert that the rollback segment is persistent.

trx_undo_assign_low(): Add template<bool is_temp>. Never invoke
trx_undo_reuse_cached() for temporary tables.