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

Improve SSD detection in fil_node_t::get_metadata on Windows

Details

    Description

      Currently, for SSD detection on Windows, innodb uses DeviceIOControl with IOCTL_STORAGE_QUERY_PROPERTY/StorageDeviceSeekPenaltyProperty . On multiple machines, especially in cloud, it would fail (not implemented, or other reason).

      However, SSD can be detected with other means, e.g if TRIM is enabled (s. https://stackoverflow.com/questions/23363115/detecting-ssd-in-windows) . Support for this in DeviceIoControl is better, at least Azure machines correctly return the value.

      We should call DeviceIOControl w.IOCTL_STORAGE_QUERY_PROPERTY with StorageDeviceSeekPenaltyProperty first, then fallback to StorageDeviceTrimProperty, and if both fails, decide it is ultimately not SSD.

      Attachments

        Activity

          wlad Vladislav Vaintroub created issue -
          wlad Vladislav Vaintroub made changes -
          Field Original Value New Value
          Assignee Vladislav Vaintroub [ wlad ]
          wlad Vladislav Vaintroub made changes -
          Fix Version/s 10.4 [ 22408 ]
          wlad Vladislav Vaintroub made changes -
          issue.field.resolutiondate 2019-05-07 15:50:25.0 2019-05-07 15:50:25.49
          wlad Vladislav Vaintroub made changes -
          Fix Version/s 10.4.5 [ 23311 ]
          Fix Version/s 10.4 [ 22408 ]
          Resolution Fixed [ 1 ]
          Status Open [ 1 ] Closed [ 6 ]
          serg Sergei Golubchik made changes -
          Workflow MariaDB v3 [ 96549 ] MariaDB v4 [ 156145 ]

          People

            wlad Vladislav Vaintroub
            wlad Vladislav Vaintroub
            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.