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

Rpl_semi_sync_master_request_ack not showing result after stopping the ACK thread

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • 10.11.0
    • None
    • Replication
    • None

    Description

      In situation with 2 replicas where both are configured in semi-sync and when ack-thread is stopped Rpl_semi_sync_master_request_ack and we switch from slave to master, result returned is false empty value, while debugging it still holds proper value.
      The PR 2374 introduced debug point pause_ack_thread_on_next_ack for testing pausing the ACK thread.
      This same PR test failure is obtained in test 6, when rebasing from latest changes MDEV-32551.
      Result before rebasing was as expected that value will be visible in SELECT and you can see that situation in commit result before rebase

      show status like 'Rpl_semi_sync_master_request_ack';
      Variable_name	Value
      Rpl_semi_sync_master_request_ack	3
      

      While, after rebase we have this result

      connection master;
      # Check request_ack right 
      show variables like 'Rpl_semi_sync_master_request_ack';
      Variable_name	Value
      

      Debugging in gdb I have seen that this value is internally unchanged, but the client doesn't receive proper value, possible race condition.

      Attachments

        Issue Links

          Activity

            People

              Deepthi ES Deepthi Eranti Sreenivas
              anel Anel Husakovic
              Votes:
              0 Vote for this issue
              Watchers:
              1 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.