REVISIÓN: Infracción de acceso y el error "no hay excepciones deben provocarse este código" ocurren cuando se utiliza SQL Server 2012 o 2014 de SQL Server

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 3042135
Síntomas
Suponga que utiliza Microsoft SQL Server 2012 o 2014 de SQL Server. Cuando se produce un interbloqueo en SQL Server, recibirá la siguiente infracción de acceso causada por el monitor de interbloqueo:
sqldk! CSlotGroup::PshRelease
sqldk! CSlotPageMgr::Release
sqllang! commondelete
sqllang! delete]
sqllang! CTraceDataSTVF::InternalReleaseResources
sqllang! TTableBase<CTraceDataSTVFInfo>:: ReleaseResources</CTraceDataSTVFInfo>
sqllang! CTraceDataSTVF:: {dtor}
sqllang! CTraceDataSTVF:: 'Eliminar destructor escalar'
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 &gt;:: 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:: ejecutar
sqldk! SOS_Scheduler::RunTask
sqldk! SOS_Scheduler::ProcessTasks
sqldk! SchedulerManager::WorkerEntryPoint
sqldk! SystemThread::RunWorker
sqldk! SystemThreadDispatcher::ProcessWorker
sqldk! SchedulerManager::ThreadEntryPoint
Kernel32! BaseThreadInitThunk
Ntdll! RtlUserThreadStart
Después de la infracción de acceso, recibirá el siguiente mensaje de error en el registro de errores de SQL Server:
Fecha>Hora> spidID.> Utilizando 'dbghelp.dll' versión '4.0.5'
Fecha>Hora> spidID.&gt; ** Volcar el subproceso - spid =ID.&GT;, CE = 0X0000007F8608E160
Fecha>Hora> spidID.&gt; *** Que se envían para el volcado de pilaRuta de acceso de archivo>\Nombre de archivo de volcado&gt; .txt
Fecha>Hora> spidID.> * *******************************************************************************
Fecha>Hora> spidID.> *
Fecha>Hora> spidID.&GT; * VOLCADO DE PILA INICIAL:
Fecha>Hora> spidID.> *Fecha>Hora> spidID.>
Fecha>Hora> spidID.> *
Fecha>Hora> spidID.&gt; * Ubicación: qxcntxt.cpp:1143
Fecha>Hora> spidID.&gt; * Expresión:! " Este código no se deben producir excepciones"
Fecha>Hora> spidID.&GT; * SPID:ID.>
Fecha>Hora> spidID.&gt; * ID. de proceso: 3556
Fecha>Hora> spidID.> *
Fecha>Hora> spidID.&gt; * Entrada búfer bytes 37 -
Fecha>Hora> spidID.&gt; * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00
Fecha>Hora> spidID.&gt; * ÿÿ y 01 00 00 00 ff ff 00 00 00 00 00 26 04 04 05 00 00 a 0c
Fecha>Hora> spidID.&gt; * 00
Fecha>Hora> spidID.> *
Fecha>Hora> spidID.> *
...
Fecha>Hora> spidID.&gt; Pila firma para el volcado es 0x000000014202549F
Fecha>Hora> spidID.&gt; [INFO] identidad Begin End | Error de estado de resultado especular preparados de sólo lectura de LazyCommit | ThreadId de base de datos de transacciones | ReadSet WriteSet buscador Savepoint LogSizeRq | CommitDep TotalComm dependientes 0 dependientes 1 dependiente 2 dependientes 3 dependientes 4 dependientes 5 dependientes 6 dependientes 7 | Ubicación del área |
Fecha>Hora> spidID.&gt; Tiempo de espera para el proceso de volcado externo 11800.

Fecha>Hora> spidID.&gt; Error: 17066, gravedad: 16, estado: 1.
Fecha>Hora> spidID.&gt; SQL Server aserción: archivo: <qxcntxt.cpp>, línea = 1143 error de aserción = '! " Este código no se deben producir excepciones"'. Este error puede ser relacionados con el tiempo. Si el error persiste después de volver a ejecutar la instrucción, utilice DBCC CHECKDB para comprobar la integridad estructural de la base de datos o reinicie el servidor para asegurarse de que las estructuras de datos en memoria no están dañadas.</qxcntxt.cpp>

Solución

Información sobre la actualización acumulativa

El problema se solucionó primero en la siguiente actualización acumulativa de SQL Server.

Recomendación: Instale la actualización acumulativa más reciente para SQL Server
Cada nueva actualización acumulativa para SQL Server contiene todas las revisiones y todas revisiones de la seguridad que se incluyeron en la actualización acumulativa anterior. Se recomienda que descargar e instalar las actualizaciones acumulativas más recientes para SQL Server:
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 3042135 - Última revisión: 06/25/2015 09:53:00 - Revisión: 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 KbMtes
Comentarios