共用方式為


改進:對 SQLIOSim 公用程式進行數個增強功能

摘要

這項改進可對 SQLIOSim 公用程式進行下列增強功能,並修正 I/O 處理可能造成的數據完整性問題。 如需 SQLIOSim 公用程式的詳細資訊,請參閱 SQLIOSim 公用程式簡介

增強記錄

  • 新增通道緩衝區以追蹤錯誤,讓歷程記錄通道緩衝區中的錯誤不太可能因為變換而取代。
  • 新增包含「刻度計數」和/或「日期和時間」的各種輸出,讓偵錯問題變得更容易。
  • 將和磁碟區信息的 fsutil 輸出新增至錯誤檔案,以便將檔案位移對應至實體磁碟上的位移,並更輕鬆地篩選 I/O 子系統追蹤。
  • 新增國際標準時間 (UTC) 和當地時間的輸出。
  • 將頁首的輸出細分成錯誤檔案,例如PageId、Checksum和 Timestamp。
  • 顯示環形緩衝區的頁面 FILE HISTORY 清單,以更輕鬆地找出環形緩衝區專案。
  • 顯示時間戳、日期時間、邏輯CPU,以及 Sqliosim.log.xmlErrorLog.xslt 檢視中的其他資料行。
  • 增加環形緩衝區的大小,並減少變換的頻率。
  • 提供常見輸出的十六進位和十進位輸出,例如PageId、Checksum和 Timestamp。
  • 匯報 Sqliosim.log.xml 的版面配置,讓您更輕鬆地在文字編輯器中讀取 XML 檔案。
  • 在使用 Internet Explorer (IE) 模式的 Microsoft Edge 中,可以正確檢視已驗證Sqliosim.log.xml和 ErrorLog.xslt

頁首時間戳

GetTickCount64在寫入作業期間,將值儲存在頁首中。 刻度計數適用於在寫入頁面時進行追蹤,以及篩選 I/O 子系統追蹤。

BNR (Bytes-Not-Read)

I/O 問題會導致讀取作業如同讀取作業成功一樣傳回,但實際緩衝區不會更新或讀取。 SQLIOSim 公用程式會收到成功的讀取,但驗證檢查失敗。

SQLIOSim 公用程式現在會先使用 BNR 模式來戳記讀取緩衝區,再發出讀取。 當讀取作業成功傳回但無法執行實際讀取時,驗證會繼續失敗。 不過,讀取的位元組會顯示 。指出 I/O 子系統問題的 BNR 模式。

寫入重試

如果 I/O 子系統在直接連結記憶體 (DAS) 安裝) 中遇到更常見的重設 (,寫入作業要求可能會不正確地完成。 SQLIOSim 公用程序不保證寫入重試功能。 在某些情況下,SQLIOSim 公用程式會嘗試讀取和驗證無法寫入的數據。

SQLIOSim 公用程式已增強以記錄寫入失敗,然後執行寫入重試作業。

增強型鎖定

VirtualProtect) 活動 (內部鎖定機制和頁面保護已優化並增強,以確保 SQLIOSim 公用程式所報告的問題不是由 SQLIOSim 公用程式的邏輯缺陷所造成。

讀取重試

修正當重試失敗的LDX (記錄模擬) 讀取時,導致讀取重試嘗試失敗的問題。

增強型輸出的範例

增強型輸出的第一個範例包含下列增強功能:

  • UTC 時間
  • 十六進位和十進位
  • 時間戳/刻度計數
  • BNR
  • 頁首展開

增強型輸出的螢幕快照,包括UTC時間、十六進位和十進位、時間戳/刻度計數、BNR 和頁首展開。

增強型輸出的第二個範例包含下列增強功能:

  • 環形緩衝區
  • UTC 時間
  • 分頁範圍分組

增強型輸出的螢幕快照,其中包括環形緩衝區、UTC 時間和頁面範圍分隔。

增強型輸出的第三個範例包含下列增強功能:

  • 刻度計數數據行
  • 邏輯 CPU 資料行

增強型輸出的螢幕快照,其中包含 Tick 計數和邏輯 CPU 的數據行。

其他相關資訊

這項改善包含在下列 SQL Server 累積更新中:

SQL Server 2022 的累積更新 7

關於 SQL Server 的累積更新

SQL Server 的每個新累積更新都包含上一個組建中的所有 Hotfix 和安全性修正。 建議您為版本的 SQL Server 安裝最新的組建:

SQL Server 2022 的最新累積更新

參考

瞭解 Microsoft 用來描述軟體更新的 術語