CORRECTIF : Violation d'accès et l'erreur « aucune exception ne doit être déclenchée par ce code » se produisent lorsque vous utilisez SQL Server 2012 ou SQL Server 2014

IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d’une traduction incorrecte du contenu ou de son utilisation par les clients.

La version anglaise de cet article est la suivante: 3042135
Symptômes
Supposons que vous utilisez Microsoft SQL Server 2012 ou SQL Server 2014. Lorsqu'un blocage se produit dans SQL Server, vous recevez la violation d'accès provoquée par le moniteur de blocage suivantes :
sqldk ! CSlotGroup::PshRelease
sqldk ! CSlotPageMgr::Release
sqllang! commondelete
sqllang! delete]
sqllang ! CTraceDataSTVF::InternalReleaseResources
sqllang ! TTableBase<CTraceDataSTVFInfo>:: ReleaseResources</CTraceDataSTVFInfo>
sqllang ! CTraceDataSTVF:: {dtor}
sqllang ! CTraceDataSTVF:: « scalaire destructeur de suppression »
sqlmin ! CSTVFInternal::Release
sqlmin ! CQueryExecContext:: ~ CQueryExecContext
sqlmin ! CQueryInstance::ShutdownQueryExecContext
sqlmin ! CQueryScan::ShutdownQueryExecContext
sqlmin ! CQueryScan::DestroyQueryOnException
sqllang ! CXStmtQuery::ShutdownOnException
sqllang ! CXStmtQuery::FinishOnExceptionImp
sqllang ! GetInterruptTicks
sqllang ! InterruptTicks<unsigned __int64="">:: LoadTicks</unsigned>
sqllang ! SOS_Ticks<><unsigned __int64="">, -3 >:: LoadTicks</unsigned>
sqllang! 'CMsqlExecContext::FExecute':: '1':: catch$ 3
msvcr100! _CallSettingFrame
msvcr100! __CxxCallCatchBlock
Ntdll ! RcFrameConsolidation
sqllang ! CMsqlExecContext::FExecute
sqllang ! CSQLSource::Execute
sqllang ! CStmtExecProc::XretLocalExec
sqllang ! CStmtExecProc::XretExecExecute
sqllang ! CXStmtExecProc::XretExecute
sqllang ! CExecStmtLoopVars::ExecuteXStmtAndSetXretReturn
sqllang ! CMsqlExecContext::ExecuteStmts<1,0></1,0>
sqllang ! CMsqlExecContext::FExecute
sqllang ! CSQLSource::Execute
sqllang ! ExecuteSql
sqllang ! CSpecProc::ExecuteSpecial
sqllang ! CSpecProc::Execute
sqllang! process_request
sqllang! process_commands
sqldk ! SOS_Task::param:: exécuter
sqldk ! SOS_Scheduler::RunTask
sqldk ! SOS_Scheduler::ProcessTasks
sqldk ! SchedulerManager::WorkerEntryPoint
sqldk ! SystemThread::RunWorker
sqldk ! SystemThreadDispatcher::ProcessWorker
sqldk ! SchedulerManager::ThreadEntryPoint
Kernel32 ! BaseThreadInitThunk
Ntdll ! RtlUserThreadStart
Après la violation d'accès, vous recevez le message d'erreur suivant dans le journal des erreurs SQL Server :
Date>Heure> spidID> À l'aide de « dbghelp.dll » version '4.0.5'
Date>Heure> spidID> ** Thread de vidage - spid =ID>, EC = 0X0000007F8608E160
Date>Heure> spidID> *** Envoyé à vidage de la pileChemin d'accès du fichier>\Nom du fichier de vidage>.txt
Date>Heure> spidID> * *******************************************************************************
Date>Heure> spidID> *
Date>Heure> spidID> * DÉBUT DUMP DE LA PILE :
Date>Heure> spidID> *Date>Heure> spidID>
Date>Heure> spidID> *
Date>Heure> spidID> * Emplacement : qxcntxt.cpp:1143
Date>Heure> spidID> * Expression:! » Aucune exception ne doit être déclenchée par ce code »
Date>Heure> spidID> * SPID :ID>
Date>Heure> spidID> * ID de processus : 3556
Date>Heure> spidID> *
Date>Heure> spidID> * Mémoire tampon d'entrée 37 octets -
Date>Heure> spidID> * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00
Date>Heure> spidID> * ÿÿ & 01 00 00 00 ff ff 0c 00 00 00 00 00 26 04 04 05 00 00
Date>Heure> spidID> * 00
Date>Heure> spidID> *
Date>Heure> spidID> *
...
Date>Heure> spidID> Signature pile pour le vidage est 0x000000014202549F
Date>Heure> spidID> [INFO] identité Begin End | Résultat de l'état d'erreur fonction Speculate préparé en lecture seule LazyCommit | Transaction de base de données ThreadId | ReadSet WriteSet ScanSet point d'enregistrement LogSizeRq | CommitDep TotalComm dépendants 0 dépendant 1 dépendant 2 dépendants 3 dépendants 4 dépendants 5 dépendant 6 dépendants 7 | Emplacement de la zone |
Date>Heure> spidID> Délai d'attente pour le processus de vidage externe 11800.

Date>Heure> spidID> Erreur : 17066, gravité : 16, état: 1.
Date>Heure> spidID> SQL Server Assertion : fichier : <qxcntxt.cpp>, ligne = 1143 Échec de l'Assertion = '! » Aucune exception ne doit être déclenchée par ce code"'. Cette erreur peut être liée au minutage. Si l'erreur persiste après la réexécution de l'instruction, utilisez DBCC CHECKDB pour vérifier la base de données pour l'intégrité structurelle ou redémarrez le serveur pour garantir des structures de données en mémoire ne sont pas endommagés.</qxcntxt.cpp>

Résolution

Informations de mise à jour cumulatives

Le problème a été tout d'abord résolu dans la mise à jour cumulative suivante de SQL Server.

Recommandation : Installez la mise à jour cumulative la plus récente pour SQL Server
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et des correctifs de sécurité qui ont été inclus dans la précédente mise à jour cumulative. Nous vous recommandons de télécharger et d'installer les dernières mises à jour cumulatives pour SQL Server :
Statut
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section « S'applique à ».

Avertissement : cet article a été traduit automatiquement

Propriétés

ID d'article : 3042135 - Dernière mise à jour : 06/25/2015 09:51:00 - Révision : 2.0

Microsoft SQL Server 2012 Service Pack 2, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3042135 KbMtfr
Commentaires