Condividi tramite


Miglioramento: apportare diversi miglioramenti all'utilità SQLIOSim

Riepilogo

Questo miglioramento apporta i miglioramenti seguenti all'utilità SQLIOSim e risolve i problemi di integrità dei dati che potrebbero essere causati dalla gestione di I/O. Per altre informazioni sull'utilità SQLIOSim, vedere Introduzione all'utilità SQLIOSim.

Registrazione avanzata

  • Aggiunge un nuovo buffer circolare per tenere traccia degli errori, per rendere improbabile che gli errori nel buffer circolare della cronologia vengano sostituiti a causa del rollover.
  • Aggiunge vari output contenenti "conteggio tick" e/o "data e ora" per semplificare il debug di un problema.
  • Aggiunge gli output delle informazioni sul volume e al file di fsutil errore, per eseguire il mapping dell'offset del file all'offset sul disco fisico e filtrare più facilmente le tracce del sottosistema di I/O.
  • Aggiunge l'output per l'ora UTC (Coordinated Universal Time) e l'ora locale.
  • Suddivide l'output dell'intestazione di pagina nel file di errore, ad esempio PageId, Checksum e Timestamp.
  • Visualizza un elenco delle pagine del FILE HISTORY buffer circolare per individuare più facilmente le voci del buffer circolare.
  • Visualizza timestamp, data e CPU logica e altre colonne nella visualizzazione Sqliosim.log.xml o ErrorLog.xslt .
  • Aumenta le dimensioni dei buffer circolari e riduce la frequenza del rollover.
  • Fornisce output esadecimali e decimali per output comuni, ad esempio PageId, Checksum e Timestamp.
  • Aggiorna il layout di Sqliosim.log.xml per semplificare la lettura del file XML in un editor di testo.
  • I Sqliosim.log.xml convalidati e ErrorLog.xslt possono essere visualizzati correttamente in Microsoft Edge che usa la modalità Internet Explorer (IE).

Timestamp dell'intestazione di pagina

Archivia il GetTickCount64 valore nell'intestazione della pagina durante le operazioni di scrittura. Il conteggio dei segni di graduazione è utile per tenere traccia quando la pagina viene scritta e filtrando le tracce del sottosistema I/O.

BNR (byte non letti)

Il problema di I/O causa la restituzione dell'operazione di lettura come se l'operazione di lettura ha esito positivo, ma il buffer effettivo non viene aggiornato o letto. L'utilità SQLIOSim riceve una lettura corretta, ma non esegue i controlli di convalida.

L'utilità SQLIOSim ora stampa i buffer di lettura usando il modello BNR prima di eseguire una lettura. Quando l'operazione di lettura viene restituita correttamente ma non riesce a eseguire la lettura effettiva, la convalida continua a non riuscire. Tuttavia, i byte letti mostrano . Modello BNR che indica un problema del sottosistema I/O.

Ripetizione dei tentativi di scrittura

Se il sottosistema di I/O rileva una reimpostazione (più comune nelle installazioni di archiviazione con collegamento diretto), le richieste di operazione di scrittura potrebbero essere completate in modo non corretto. L'utilità SQLIOSim non garantisce funzionalità di ripetizione dei tentativi di scrittura. In alcuni casi, l'utilità SQLIOSim tenta di leggere e convalidare i dati che non riescono a scrivere.

L'utilità SQLIOSim è stata migliorata per registrare un errore di scrittura e quindi eseguire un'operazione di ripetizione dei tentativi di scrittura.

Blocco avanzato

I meccanismi di blocco interno e l'attività di protezione della pagina (VirtualProtect) sono ottimizzati e migliorati per garantire che un problema segnalato dall'utilità SQLIOSim non sia causato da un difetto della logica nell'utilità SQLIOSim.

Nuovo tentativo di lettura

Risolve un problema che causa l'esito negativo del tentativo di lettura durante la ripetizione di un LDX non riuscito (simulazione log).

Esempi di output avanzati

Il primo esempio dell'output avanzato include i miglioramenti seguenti:

  • Ora UTC
  • Esadecimale e decimale
  • Timestamp/Conteggio tick
  • BNR
  • Espansione dell'intestazione di pagina

Screenshot dell'output avanzato, che include l'ora UTC, l'esadecimale e decimale, il conteggio timestamp/tick, l'espansione dell'intestazione BNR e pagina.

Il secondo esempio dell'output avanzato include i miglioramenti seguenti:

  • Buffer circolare
  • Ora UTC
  • Interruzione dell'intervallo di pagine

Screenshot dell'output avanzato, che include il buffer circolare, l'ora UTC e il breakout intervallo di pagine.

Il terzo esempio dell'output avanzato include i miglioramenti seguenti:

  • Colonna conteggio segni di graduazione
  • Colonna CPU logica

Screenshot dell'output avanzato, che include le colonne per Conteggio tick e CPU logica.

Ulteriori informazioni

Questo miglioramento è incluso nell'aggiornamento cumulativo seguente per SQL Server:

Aggiornamento cumulativo 7 per SQL Server 2022

Informazioni sugli aggiornamenti cumulativi per SQL Server

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e le correzioni di sicurezza presenti nella build precedente. È consigliabile installare la build più recente per la versione di SQL Server:

Aggiornamento cumulativo più recente per SQL Server 2022

Riferimenti

Informazioni sulla terminologia usata da Microsoft per descrivere gli aggiornamenti software.