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

Server does not run on Windows XP due to a missing export "CallbackMayRunLong" in kernel32.dll

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 5.5.21, 5.5.22
    • 5.5.24
    • None
    • None
    • Windows XP SP3 32bit

    Description

      Initially reported in the knowledge base:
      http://kb.askmonty.org/en/mariadb-5522-release-notes/comments/279

      I got the same problem trying to start server on XP, the error message is something like "The entry point into CallbackMayRunLong not found in kernel32.dll" (sorry for the rough quote, I only have it in Russian).

      Tried MariaDB 5.5.21 and 5.5.22, got it on both.

      No problem with MariaDB 5.3.5 or MySQL 5.5.22.

      See also https://bugs.launchpad.net/maria/+bug/973113

      Attachments

        Activity

          Wlad, I've added your WEAK_SYMBOL() wrapper for CallbackMayRunLong. mysqld.exe started to load, but in uncovered another problem. thread scheduler is set to pool-of-threads on windows by default, and it immediately crashes on XP.

          I've put a workaround in mysqld.cc, but please review it and feel free to fix it differently.

          http://bazaar.launchpad.net/~maria-captains/maria/5.5/revision/3364

          serg Sergei Golubchik added a comment - Wlad, I've added your WEAK_SYMBOL() wrapper for CallbackMayRunLong. mysqld.exe started to load, but in uncovered another problem. thread scheduler is set to pool-of-threads on windows by default, and it immediately crashes on XP. I've put a workaround in mysqld.cc, but please review it and feel free to fix it differently. http://bazaar.launchpad.net/~maria-captains/maria/5.5/revision/3364

          The workaround by Serg is actually a correct fix. Threadpool is not supposed to work on downlevel Windows versions (XP and Win2003) and thread-handling should be silently converted to thread-per-connection, as per documentation.

          I'm quite sure that similar check for Vista+ used to be in place during development of threadpool feature (and I even tested XP back in the days using a VM), yet it somehow disappeared when feature was checked in

          wlad Vladislav Vaintroub added a comment - The workaround by Serg is actually a correct fix. Threadpool is not supposed to work on downlevel Windows versions (XP and Win2003) and thread-handling should be silently converted to thread-per-connection, as per documentation. I'm quite sure that similar check for Vista+ used to be in place during development of threadpool feature (and I even tested XP back in the days using a VM), yet it somehow disappeared when feature was checked in

          People

            wlad Vladislav Vaintroub
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

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