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

Add status variable that gets incremented if slave's parallel worker thread is idle due to full queue

    XMLWordPrintable

    Details

      Description

      On a replication slave that has parallel replication enabled, if slave_parallel_max_queued is set too small, then the SQL thread's queue can sometimes be too small to assign work to all of the slave worker threads. When this happens, the SQL thread's state will be "Waiting for room in worker thread event", and the idle worker thread's state will be "Waiting for work from SQL thread".

      |  4 | system user |           | NULL | Connect |    139 | Waiting for work from SQL thread              | NULL             |    0.000 |
      ...
      | 21 | system user |           | NULL | Connect |     45 | Waiting for room in worker thread event queue | NULL             |    0.000 |
      ...
      

      https://mariadb.com/kb/en/library/parallel-replication/#configuring-the-maximum-size-of-the-parallel-slave-queue

      https://mariadb.com/kb/en/library/replication-and-binary-log-system-variables/#slave_parallel_max_queued

      I think it would be useful to add a status variable that gets incremented if slave's parallel worker thread is idle because the SQL thread's queue is full.

        Attachments

          Activity

            People

            Assignee:
            sujatha.sivakumar Sujatha Sivakumar
            Reporter:
            GeoffMontee Geoff Montee
            Votes:
            2 Vote for this issue
            Watchers:
            7 Start watching this issue

              Dates

              Created:
              Updated: