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

Unable to install MariaDB MSI package on Windows Server 2012

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Not a Bug
    • 10.11.2, 10.5.19, 10.6.12, 10.7.8, 10.8.7, 10.9.5, 10.10.3
    • N/A
    • Packaging, Server
    • Windows Server 2012

    Description

      Starting MariaDB 10.5 the installation of MSI package on Windows Server 2012 failed with error:

      This application is only supported on Windows 10, Windows Server 2016, or higher.
      

      Attachments

        Activity

          oleg.smirnov Oleg Smirnov added a comment -

          The description says about 10.5 but the version in the screenshot is 10.11, is it alright? Does it mean we have that message for every version starting from 10.5?
          Another question is are we expected to support Windows Server 2012? As I can see from https://mariadb.com/kb/en/deprecation-policy/ probably we are until October 2023, is it correct?

          oleg.smirnov Oleg Smirnov added a comment - The description says about 10.5 but the version in the screenshot is 10.11, is it alright? Does it mean we have that message for every version starting from 10.5? Another question is are we expected to support Windows Server 2012? As I can see from https://mariadb.com/kb/en/deprecation-policy/ probably we are until October 2023, is it correct?

          I have this message for every version since 10.5.
          Windows Server 2012 is expected to be supported until October 2023.

          skvoboo Anton Serbulov added a comment - I have this message for every version since 10.5. Windows Server 2012 is expected to be supported until October 2023.
          ralf.gebhardt Ralf Gebhardt added a comment - - edited

          From the 10.5.0 changelog:
          Revision #cff7cf15d7 2019-06-27 20:05:01 +0200
          Windows MSI : small cleanups, disable Windows 7/8

          It would be good to understand if the reason is related to
          Revision #74a744b51f 2019-06-27 19:33:25 +0200
          Windows : Do not package redistributable C runtime , nor merge modules into Windows installers
          Revision #b60aee58c7 2019-06-27 19:25:33 +0200
          MDEV-17279 Windows : link C runtime dynamically Improve previous patch so we do not depend on (tiny) compiler-version dependent libraries, i.e vcruntime140.dll, and msvcp140.dll

          Details from the last of these commits:

          The remaining dependency is Universal CRT, is part of Win10+ OS,
          and should already be installed by Windows update on most downlevel
          systems.

          The first listed commit in my comment is the following change in the installer:

          <Condition Message='This application is only supported on Windows 10, Windows Server 2016, or higher.'>
          <![CDATA[Installed OR (VersionNT >= 603)]]>

          ralf.gebhardt Ralf Gebhardt added a comment - - edited From the 10.5.0 changelog: Revision #cff7cf15d7 2019-06-27 20:05:01 +0200 Windows MSI : small cleanups, disable Windows 7/8 It would be good to understand if the reason is related to Revision #74a744b51f 2019-06-27 19:33:25 +0200 Windows : Do not package redistributable C runtime , nor merge modules into Windows installers Revision #b60aee58c7 2019-06-27 19:25:33 +0200 MDEV-17279 Windows : link C runtime dynamically Improve previous patch so we do not depend on (tiny) compiler-version dependent libraries, i.e vcruntime140.dll, and msvcp140.dll Details from the last of these commits: The remaining dependency is Universal CRT, is part of Win10+ OS, and should already be installed by Windows update on most downlevel systems. The first listed commit in my comment is the following change in the installer: <Condition Message='This application is only supported on Windows 10, Windows Server 2016, or higher.'> <![CDATA [Installed OR (VersionNT >= 603)] ]>
          ralf.gebhardt Ralf Gebhardt added a comment -

          skvoboo, are you running Windows Server 2012 or Windows Server 2012 R2?

          ralf.gebhardt Ralf Gebhardt added a comment - skvoboo , are you running Windows Server 2012 or Windows Server 2012 R2?
          skvoboo Anton Serbulov added a comment - - edited

          I'm running Windows Server 2012
          The issue is actual for Windows Server 2012 only because VersionNT for this OS is equal 602

          skvoboo Anton Serbulov added a comment - - edited I'm running Windows Server 2012 The issue is actual for Windows Server 2012 only because VersionNT for this OS is equal 602
          skvoboo Anton Serbulov added a comment - - edited

          Please take a look at the MsiNTProductType property.

          Windows 8 x64

          VersionNT64 = 602 AND MsiNTProductType = 1
          

          Windows Server 2012 x64

          VersionNT64 = 602 AND MsiNTProductType <> 1
          

          I think this will help you solve the problem.

          skvoboo Anton Serbulov added a comment - - edited Please take a look at the MsiNTProductType property. Windows 8 x64 VersionNT64 = 602 AND MsiNTProductType = 1 Windows Server 2012 x64 VersionNT64 = 602 AND MsiNTProductType <> 1 I think this will help you solve the problem.
          ralf.gebhardt Ralf Gebhardt added a comment -

          skvoboo, do you have access to a Windows Server 2012 R2 installation? It is based on OS version 6.3, see https://learn.microsoft.com/en-us/windows/win32/sysinfo/operating-system-version. VersionNT should be 603 in that case.

          ralf.gebhardt Ralf Gebhardt added a comment - skvoboo , do you have access to a Windows Server 2012 R2 installation? It is based on OS version 6.3, see https://learn.microsoft.com/en-us/windows/win32/sysinfo/operating-system-version . VersionNT should be 603 in that case.
          skvoboo Anton Serbulov added a comment - - edited

          The issue is not actual for Windows Server 2012 R2
          This issue about installation on Windows Server 2012

          skvoboo Anton Serbulov added a comment - - edited The issue is not actual for Windows Server 2012 R2 This issue about installation on Windows Server 2012
          wlad Vladislav Vaintroub added a comment - - edited

          MariaDB does not support Windows 2012 until October 2023. It was supported until Oct 2018 .

          And I am surprised that Ralph did not bring this up before.

          MariaDB supports Windows version in their active lifecycle, which means "mainstream", not "extended"

          10.5 was released after that. To my knowledge, 10.5 or any later version was not tested by MariaDB people on that specific OS. Not by CI, neither by QA, neither by developers. It might work on this OS, or it might not. Nobody checked.

          So whatever the condition says, is strictly speaking, not incorrect.

          The Engineering policy has had this "Until the product reaches the Mainstream Support End Date.", specifically for Windows, for many-many years now ( current version https://mariadb.com/wp-content/uploads/2023/03/mariadb-engineering-policies-v4-14-1_policy_1166.pdf has it too, of course).

          Mainstream supported for 2012 and 2012 R2 ended on
          Oct 9 2018 ( https://learn.microsoft.com/en-us/lifecycle/products/windows-server-2012 )

          We should have blocked 2012 R2 too, but the condition for that is trickier, so it did not work
          (but MariaDB devs or QA would not know, because it was not tested on R2 either)

          wlad Vladislav Vaintroub added a comment - - edited MariaDB does not support Windows 2012 until October 2023. It was supported until Oct 2018 . And I am surprised that Ralph did not bring this up before. MariaDB supports Windows version in their active lifecycle, which means "mainstream", not "extended" 10.5 was released after that. To my knowledge, 10.5 or any later version was not tested by MariaDB people on that specific OS. Not by CI, neither by QA, neither by developers. It might work on this OS, or it might not. Nobody checked. So whatever the condition says, is strictly speaking, not incorrect. The Engineering policy has had this "Until the product reaches the Mainstream Support End Date.", specifically for Windows, for many-many years now ( current version https://mariadb.com/wp-content/uploads/2023/03/mariadb-engineering-policies-v4-14-1_policy_1166.pdf has it too, of course). Mainstream supported for 2012 and 2012 R2 ended on Oct 9 2018 ( https://learn.microsoft.com/en-us/lifecycle/products/windows-server-2012 ) We should have blocked 2012 R2 too, but the condition for that is trickier, so it did not work (but MariaDB devs or QA would not know, because it was not tested on R2 either)
          ralf.gebhardt Ralf Gebhardt added a comment -

          skvoboo, thanks for checking Windows Server 2012 R2 which verified that VersionNT64 is 603 for it and therefor not correctly validated by the installer.

          As correctly mentioned by wlad, we have to limit the support of Windows platforms to the versions with Mainstream Support due to the available QA resources.

          An option could be to change the installer to allow an installation on not supported Windows versions, by a checkbox to enable this. But such solutions usually do more harm than they help

          ralf.gebhardt Ralf Gebhardt added a comment - skvoboo , thanks for checking Windows Server 2012 R2 which verified that VersionNT64 is 603 for it and therefor not correctly validated by the installer. As correctly mentioned by wlad , we have to limit the support of Windows platforms to the versions with Mainstream Support due to the available QA resources. An option could be to change the installer to allow an installation on not supported Windows versions, by a checkbox to enable this. But such solutions usually do more harm than they help

          People

            Unassigned Unassigned
            skvoboo Anton Serbulov
            Votes:
            0 Vote for this issue
            Watchers:
            5 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.