Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-37914

Shrinking InnoDB buffer pool (SET GLOBAL innodb_buffer_pool_size) is occasionally aborted

    XMLWordPrintable

Details

    • Related to performance
    • Q1/2026 Server Maintenance

    Description

      Environment:
      MariaDB SkySQL - Serverless DB – dbtbf04949730

      Server vestion : 11.8.2

      While scaling a Serverless instance (dbtbf04949730), a background operation executed

      SET GLOBAL innodb_buffer_pool_size=67108864, which triggered a complete system lock.

      During the resize, multiple user sessions became blocked on system table locks , and the database became unresponsive for ~6 minutes before the container crashed and restarted.

      Both CREATE TABLE statements are blocked by the buffer pool resize.Both CREATE TABLE statements need to write to SYS_TABLES (InnoDB’s data dictionary), but they can’t because the buffer pool resize holds an exclusive lock on it.

      Eventually the service crashes and restarts, unblocking operations.

      SET GLOBAL innodb_buffer_pool_size=67108864;
       
      Observe via SHOW PROCESSLIST:
       
      | 30053 | skysql_admin | Query | 384s | SET GLOBAL innodb_buffer_pool_size=67108864 |
       
      | 30057 | dbtbf04949730 | Query | 384s | CREATE TABLE test123455 (...)               |
       
      | 30165 | dbtbf04949730 | Query | 244s | CREATE TABLE test_users (...)
      
      

      i

      nformation_schema.innodb_locks shows exclusive (X) locks on SYS_TABLES.
      SELECT * FROM information_schema.innodb_locks;
      | lock_id | lock_trx_id | lock_mode | lock_type | lock_table  | lock_index | lock_space | lock_page | lock_rec | lock_data |
      +---------+-------------+-----------+-----------+--------------+------------+------------+-----------+----------+-----------+
      | 46713:1 |    46713 | X     | TABLE   | `SYS_TABLES` | NULL    |    NULL |   NULL |   NULL | NULL   |
      | 46712:1 |    46712 | X     | TABLE   | `SYS_TABLES` | NULL    |    NULL |   NULL |   NULL | NULL   |
       
      SELECT
        ->   trx_id,
        ->   trx_state,
        ->   trx_started,
        ->   trx_requested_lock_id,
        ->   trx_wait_started,
        ->   trx_mysql_thread_id,
        ->   trx_query
        -> FROM information_schema.innodb_trx
        -> ORDER BY trx_started;
      

      trx_id trx_state trx_started trx_requested_lock_id trx_wait_started trx_mysql_thread_id trx_query

       
      | 46712 | RUNNING  | 2025-10-17 11:47:33 | NULL         | NULL        |        30057 | CREATE TABLE test123455 (
       id BIGINT PRIMARY KEY,
       dane VARCHAR(255) NOT NULL
      )                                                                                                                                                                                                                                                                                                                                  |
      | 46713 | LOCK WAIT | 2025-10-17 11:49:53 | 46713:1        | 2025-10-17 11:49:53 |        30165 | CREATE TABLE IF NOT EXISTS test_users (
              id INT AUTO_INCREMENT PRIMARY KEY,
              username VARCHAR(50) NOT NULL,
              email VARCHAR(100) NOT NULL,
              first_name VARCHAR(50),
              last_name VARCHAR(50),
              age INT,
              salary DECIMAL(10,2),
              department VARCHAR(50),
              hire_date DATE,
              is_active BOOLEAN DEFAULT TRUE,
              created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
              INDEX idx_username (username),
              INDEX idx_email (email),
              INDEX idx_department (department),
              INDEX idx_hire_date (hire_date)
            ) ENGINE=InnoDB |
      

      -----------------------------+

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              nedyalko.petrov Nedyalko Petrov
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.