Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Sintomi

Supponiamo che tu usi Microsoft SQL Server 2012 o SQL Server 2014. Quando si verifica un deadlock in SQL Server, viene visualizzata la seguente violazione di accesso causata da monitoraggio deadlock:

sqldk! CSlotGroup::P shReleasesqldk! CSlotPageMgr:: Releasesqllang! commondeletesqllang! delete [] sqllang! CTraceDataSTVF::InternalReleaseResourcessqllang! TTableBase<CTraceDataSTVFInfo>:: ReleaseResourcessqllang! CTraceDataSTVF:: {dtor} sqllang! CTraceDataSTVF::' scalare l'eliminazione di destructor'sqlmin! CSTVFInternal::Releasesqlmin! CQueryExecContext:: ~ CQueryExecContextsqlmin! CQueryInstance::ShutdownQueryExecContextsqlmin! CQueryScan:: ShutdownQueryExecContextsqlmin! CQueryScan::D estroyQueryOnExceptionsqllang! CXStmtQuery::ShutdownOnExceptionsqllang! CXStmtQuery::FinishOnExceptionImpsqllang! GetInterruptTickssqllang! InterruptTicks<unsigned __int64>:: LoadTickssqllang! SOS_Ticks<InterruptTicks<senza segno __int64>,-3>:: LoadTickssqllang!' CMsqlExecContext:: FExecute '::' 1':: Catch $3msvcr100! _CallSettingFramemsvcr100! __CxxCallCatchBlockntdll! RcFrameConsolidationsqllang! CMsqlExecContext::FExecutesqllang! CSQLSource::Executesqllang! CStmtExecProc::XretLocalExecsqllang! CStmtExecProc::XretExecExecutesqllang! CXStmtExecProc::XretExecutesqllang! CExecStmtLoopVars::ExecuteXStmtAndSetXretReturnsqllang! CMsqlExecContext:: ExecuteStmts<1,0>sqllang! CMsqlExecContext::FExecutesqllang! CSQLSource::Executesqllang! ExecuteSqlsqllang! CSpecProc::ExecuteSpecialsqllang! CSpecProc:: Executesqllang! process_requestsqllang! process_commandssqldk! SOS_Task::P Aram:: Executesqldk! SOS_Scheduler:: RunTasksqldk! SOS_Scheduler::P rocessTaskssqldk! SchedulerManager::WorkerEntryPointsqldk! SystemThread:: RunWorkersqldk! SystemThreadDispatcher::P rocessWorkersqldk! SchedulerManager::ThreadEntryPointkernel32! BaseThreadInitThunkntdll! RtlUserThreadStart

Dopo la violazione di accesso, viene visualizzato il messaggio di errore seguente dal log degli errori di SQL Server:

<data> <ora> SPID<ID> con ' dbghelp. dll ' versione ' 4.0.5' <Data> <ora> SPID> <0 ID> * * thread di dump-SPID = <ID>, EC = 0X0000007F8608E160> <4 Data> <Timeora> spid> <8 ID> * * * il dump dello Stack viene inviato al <percorso di file> \ <il nome del documento di dump>. txt> <4 Data> <ora> SPID> <8 DateID> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * <Data> <ora> SPID> <4 ID> <Data> <ora> SPID<ID> * <Data> <ora> SPID <ID><Data> <ora> SPID> <8 ID> * <Data> <ora> SPID> <4 ID> * location: qxcntxt. cpp: 1143> <6 Data> <ora> SPID> <0 ID> * Expression ID : !" Questo codice non deve generare eccezioni <data> <ora> SPID> <6 id> * SPID: <ID><Data> <ora> SPID> <4 id> * id processo: 3556> <6 Data> <ora> spid><0 id> * <Data> <ora> SPID><6 ID> * buffer di Input 37 byte-<data> <ora> SPID> <02 ID> * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00> <04 Data> <ora> SPID> <08 ID> * ÿŸ & 01 00 00 00 ff FF 0C 00 00 00 00 00 26 04 04 05 00 00> <1 Data> <ora> SPID> <5 ID> * 00> <7 Data> <ora> SPID> <1 ID> * <Data> <ora> SPID> <7 ID> *... <Data> <ora> SPID> <3 ID> la firma dello stack per il dump è 0x000000014202549F> <5 Data> <ora> SPID> <9 ID> [info] identità inizio fine | Errore relativo al risultato dello stato speculare su LazyCommit ReadOnly | Database delle transazioni ThreadId | Scritto di salvataggio LogSizeRq | CommitDep TotalComm dipendente 0 dipendente 1 dipendente 2 dipendente da 3 dipendenti 5 dipendenti da 7 dipendenti da 6 dipendente Posizione area |> <41 data> <ora> SPID> <45 ID> timeout in attesa di un processo di dump esterno 11800. <data> <ora> SPID> <1 ID> errore: 17066, gravità: 16, stato: 1. <Data> <ora> SPID> <7 ID> SQL Server Assertion: file: <qxcntxt. cpp>, line = 1143 Failed Assertion ='! " Questo codice non deve generare eccezioni. Questo errore può essere correlato alla temporizzazione. Se l'errore persiste dopo la rieseguire l'istruzione, usare DBCC CHECKDB per controllare il database per l'integrità strutturale oppure riavviare il server per verificare che le strutture di dati in memoria non siano danneggiate.

Risoluzione

Informazioni sull'aggiornamento cumulativo

Il problema è stato risolto per la prima volta nel seguente aggiornamento cumulativo di SQL Server.

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. È consigliabile scaricare e installare gli aggiornamenti cumulativi più recenti per SQL Server:

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×