Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MDEV-34909 DDL hang during SET GLOBAL innodb_log_file_size on PMEM #3533

Open
wants to merge 1 commit into
base: 10.11
Choose a base branch
from

Conversation

dr-m
Copy link
Contributor

@dr-m dr-m commented Sep 20, 2024

  • The Jira issue number for this PR is: MDEV-34909

Description

Executing a DDL operation concurrently with SET GLOBAL innodb_log_file_size could lead to a hang of most InnoDB threads.

log_t::persist(): Add a parameter holding_latch to specify whether the caller is already holding exclusive log_sys.latch, like log_write_and_flush() always is.

Release Notes

Executing a DDL operation concurrently with SET GLOBAL innodb_log_file_size when ib_logfile0 resides on a mount -o dax file system (persistent memory mapped log) could lead to a hang of most InnoDB threads.

How can this PR be tested?

Build with CMAKE_CXX_FLAGS including -DLOG_LATCH_DEBUG.

./mtr --parallel=auto innodb.log_file_size_online

Basing the PR against the correct MariaDB version

  • This is a new feature or a refactoring, and the PR is based against the main branch.
  • This is a bug fix, and the PR is based against the earliest maintained branch in which the bug can be reproduced.

PR quality check

  • I checked the CODING_STANDARDS.md file and my PR conforms to this where appropriate.
  • For any trivial modifications to the PR, I am ok with the reviewer making the changes themselves.

log_t::persist(): Add a parameter holding_latch to specify
whether the caller is already holding exclusive log_sys.latch,
like log_write_and_flush() always is.
@dr-m dr-m self-assigned this Sep 20, 2024
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants