Uploaded image for project: 'MariaDB MaxScale'
  1. MariaDB MaxScale
  2. MXS-6737

PAM Authentication Deadlock & Worker Thread Freeze

    XMLWordPrintable

Details

    • MXS-SPRINT-273, MXS-SPRINT-275, MXS-SPRINT-276

    Description

      Resolution:
      MaxScale now better manages the maxscale_pam_auth_tool-subprocess. MaxScale now checks the return value of kill() and if sending the signal failed, MaxScale moves the subprocess polling to the MainWorker. This way, the RoutingWorker can close the client session without waiting for the subprocess. MainWorker then regularly checks if the subprocess exited, and clean up its resources. The most likely reason for kill() failing is that MaxScale has insufficient privileges.

      Original description:
      MaxScale instance (Version: 25.01.3) crashed and performed an automatic restart at 02:44:26

      At 02:24:40 timeout (SIGTERM) was issued for /usr/bin/maxscale_pam_auth_tool during user authentication

      From 02:24:41 to 02:26:00 : MaxScale flooded the log with continuous  timeout (SIGKILL) errors trying to terminate it.

      02:25:30 & 02:26:00  The deadlock caused Worker-02 to freeze and stop reporting back.

      02:26:01 : The watchdog was triggered. GDB failed to generate an external output, an internal stacktrace was not dumped, and the process restarted.

       
      2026-07-15 02:24:40   warning: (2815) Soft timeout for command '/usr/bin/maxscale_pam_auth_tool', sending SIGTERM
      2026-07-15 02:24:41   error  : (2815) Hard timeout for command '/usr/bin/maxscale_pam_auth_tool', sending SIGKILL
      ..
      ...
      .....
      2026-07-15 02:25:30   warning: Thread 'Worker-02' has not reported back in 30 seconds.
      2026-07-15 02:26:01   notice : GDB failed to produce output, generating stacktrace in MaxScale.
       
       
       
      2026-07-15 02:44:26   notice : MariaDB MaxScale 25.01.3 started
      

      The backend database XXX_XX-XX continuously requests the dialog plugin for the user YYYYY, but MaxScale logs that only mysql_native_password is supported.

       
      2026-07-15 02:51:21   error  : (52) [MariaDBAuth] 'XXX_XX-XX' asked for authentication plugin 'dialog' when authenticating 'YYYYYY'@'ZZ.ZZZ.ZZ.ZZZ'. Only 'mysql_native_password' is supported.
      
      

      Attachments

        Activity

          People

            esa.korhonen Esa Korhonen
            pramod.mahto@mariadb.com Pramod Mahto
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 1d Original Estimate - 1d
                1d
                Remaining:
                Remaining Estimate - 0d
                0d
                Logged:
                Time Spent - 6d
                6d

                Git Integration

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