Aanmelden met Microsoft
Meld u aan of maak een account.
Hallo,
Selecteer een ander account.
U hebt meerdere accounts
Kies het account waarmee u zich wilt aanmelden.

BUG #: 187868 (Contentbeheer)VSTS: 1340145

Microsoft distribueert oplossingen van Microsoft SQL Server 2012 in een downloadbaar bestand. Aangezien de oplossingen cumulatief zijn, elke nieuwe versie bevat alle hotfixes en alle beveiligingsupdates die opgenomen in de vorige versie van SQL Server 2012 zijn update release.

Symptomen

Overweeg het volgende scenario:

  • U maakt een opgeslagen procedure die een parameter tabelwaarden (TVP) in Microsoft SQL Server 2012 gebruikt.

  • U kunt SQL Profiler of SQL Server uitgebreid gebeurtenissen vastleggen de RPC: starten van en RPC: voltooid gebeurtenissen.

  • U hebt een query uitvoert die gebruikmaakt van de TVP.

  • Er is een time-out opgetreden voor de query.

In dit scenario wordt een scheduler niet rentestand fout optreedt en query's die worden uitgevoerd op de dezelfde scheduler traag. Bovendien wordt een mini-bestand gegenereerd in de map voor logboekbestanden van SQL Server.
Wanneer dit probleem optreedt, wordt een foutbericht van de volgende strekking weergegeven:

System.Data.SqlClient.SqlException (0x80131904): De time-out is verstreken. De time-outperiode is verstreken voordat de bewerking is voltooid of de server reageert niet.
op System.Data.SqlClient.SqlInternalConnection.OnError (SqlException uitzondering, Boolean breakConnection)
op System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
bij System.Data.SqlClient.TdsParserStateObject.ReadSniError (TdsParserStateObject, stateObj, UInt32-fout)
op System.Data.SqlClient.TdsParserStateObject.ReadSni (asyncResult DbAsyncResult, TdsParserStateObject, stateObj)
op System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
op System.Data.SqlClient.TdsParserStateObject.ReadByte()
bij System.Data.SqlClient.TdsParser.Run (RunBehavior runBehavior, cmdHandler SqlCommand, SqlDataReader dataStream, BulkCopySimpleResultSet, bulkCopyHandler, TdsParserStateObject stateObj)
op System.Data.SqlClient.SqlCommand.FinishExecuteReader (ds SqlDataReader, RunBehavior, runBehavior, String resetOptionsString)
bij System.Data.SqlClient.SqlCommand.RunExecuteReaderTds (CommandBehavior cmdBehavior, RunBehavior, runBehavior, Boolean returnStream, Boolean async)
bij System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior, runBehavior, Boolean returnStream, String, methode, DbAsyncResult resultaat)
bij System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery (DbAsyncResult resultaat String methodName, Boolean sendToPipe)
op System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
op TVPApp.Program.Main (String [] args)


De planner rentestand niet fout met een foutbericht van de volgende strekking vastgelegd in het foutenlogboek van SQL Server:

< Datum >< tijd > Server met behulp van 'dbghelp.dll' versie '4.0.5'
< Datum >< tijd > Server *** kan geen thread context voor de spid krijgt #
<Date><Time> Server * *******************************************************************************
< Datum >< tijd > Server *
< Datum >< tijd > Server * BEGIN STACKDUMP:
De Server < datum >< tijd > * < datum >< tijd > spid #
< Datum >< tijd > Server *
< Datum >< tijd > Server * niet rentestand Scheduler
< Datum >< tijd > Server *
<Date><Time> Server * *******************************************************************************
< Datum >< tijd > Server Stack handtekening voor de dump is 0x000000000000002C
< Datum >< tijd > Server extern dump proces return code 0x20000001.
Externe dump verwerken zonder fouten geretourneerd.
< Datum >< tijd > Server-proces 0:0:0 (0x1670) 0x0000000004EDE160 werknemer lijkt te zijn niet rentestand op Scheduler 5. Aanmaaktijd thread: 13014210386757. Gebruikt ongeveer Thread CPU: kernel 0 ms, mevrouw 70106 gebruiker proces gebruik van 16%. 77% niet-actief systeem. Interval: 70140 ms.
< Datum >< tijd > Server-proces 0:0:0 (0x1670) 0x0000000004EDE160 werknemer lijkt te zijn niet rentestand op Scheduler 5. Tijd voor het maken van thread:

Oorzaak

Dit probleem treedt op vanwege een fout in de Database-Engine van SQL Server 2012. De kolommen in de TVP worden geïmplementeerd, zoals het invoegen van tekenreeksen of buffers en een toename van het aantal rijen het aantal buffers toeneemt. Het proces dat buffers loslaat is echter tijdrovend. Daarom een planner rentestand niet fout is gegenereerd wanneer vrijgeven en verkleinen van bewerkingen plaatsvinden.

Opmerking Een soortgelijk probleem werd verholpen in het volgende Microsoft Knowledge base-artikel. Het cumulatieve updatepakket dat wordt beschreven in het artikel is echter niet voor een query time-probleem.

2520808 oplossen: scheduler rentestand niet fout tijdens het uitvoeren van een query die een TVP in SQL Server 2008 of SQL Server 2008 R2 gebruikt als SQL Profiler of uitgebreide gebeurtenissen van SQL Server wordt gebruikt

Oplossing

Cumulatieve update informatie

Cumulatieve updatepakket 5 voor SQL Server 2012 Service Pack 1 (SP1)

De correctie voor dit probleem werd voor het eerst uitgebracht in de cumulatieve Update 5. Voor meer informatie over het verkrijgen van dit cumulatieve updatepakket voor SQL Server 2012, klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:

Pakket 5- 2861107 cumulatieve update voor SQL Server 2012Opmerking Omdat de opbouw cumulatief van opzet zijn, elke nieuwe versie van de correctie bevat alle hotfixes en de beveiligingscorrecties die opgenomen in de vorige versie van SQL Server 2012 zijn release opgelost. We raden het toepassen van de meest recente hotfix-versie waarin deze hotfix is opgenomen. Voor meer informatie klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:

2772858 met de SQL Server 2012 bouwt die zijn uitgebracht na Service Pack 1 voor SQL Server 2012 werd uitgebracht.

Tijdelijke oplossing

U kunt dit probleem omzeilen door één van de volgende methoden te gebruiken.

  • Gebruik SQL Profiler of SQL Server uitgebreid gebeurtenissen niet.

  • Schakel de RPC: starten van en RPC: voltooid selectievakjes in de definitie van de trace.

Meer informatie

Deze correctie geldt niet voor SQL Server 2008 of SQL Server 2008 R2 wanneer dit KB wordt gepubliceerd. Als alle gebruikers hetzelfde probleem in SQL Server 2008 of SQL Server 2008 R2 zelfs nadat de gebruikers het pakket dat wordt beschreven in het volgende artikel toepassen, als er een time-outwaarde valideren en te bepalen of de time-outperiode kan worden opgelost. In andere gevallen, een verzoek indienen om deze correctie toepassen op SQL Server 2008 of SQL Server 2008 R2.

2520808 oplossen: scheduler rentestand niet fout tijdens het uitvoeren van een query die een TVP in SQL Server 2008 of SQL Server 2008 R2 gebruikt als SQL Profiler of uitgebreide gebeurtenissen van SQL Server wordt gebruikt

Informatie over de call-stack

sqlmin!CLinkedMap<__int64,CCheckReadersAndWriters::CCounts>::FLookup+0x29sqlmin!CCheckReadersAndWriters::Release+0x69
sqlmin!CMainIlb::{dtor}+0x3d
sqlmin!CMainIlb::`scalar deleting destructor'+0x3d
sqlmin!CBlobHandleFactoryMain::ReleaseILockBytes+0x13
sqlmin!CMainIlb::Release+0xf0
sqllang!CTraceRpcBinaryStream::~CTraceRpcBinaryStream+0x80
sqllang!CTraceTvpData::{dtor}+0x14
sqllang!CTraceTvpData::`scalar deleting destructor'+0x1e
sqllang!CRpcTraceHelper::CleanUpTraceTvpData+0x33
sqllang!CRpcTraceHelper::~CRpcTraceHelper+0x70
sqllang!CRPCExecEnv::~CRPCExecEnv+0x2ab
sqllang!CRPCExecEnv::`scalar deleting destructor'+0x14
sqllang!process_request+0x10b1
sqllang!process_commands+0x51c
sqldk!SOS_Task::Param::Execute+0x21e
sqldk!SOS_Scheduler::RunTask+0xa8
sqldk!SOS_Scheduler::ProcessTasks+0x299
sqldk!SchedulerManager::WorkerEntryPoint+0x261
sqldk!SystemThread::RunWorker+0x8f
sqldk!SystemThreadDispatcher::ProcessWorker+0x3c8
sqldk!SchedulerManager::ThreadEntryPoint+0x236
kernel32!BaseThreadInitThunk+0xd
ntdll!RtlUserThreadStart+0x1d
sqlmin!CLinkedMap<__int64,CCheckReadersAndWriters::CCounts>::FDelete+0x34sqlmin!CCheckReadersAndWriters::Release+0xfb
sqlmin!CMainIlb::{dtor}+0x3d
sqlmin!CMainIlb::`scalar deleting destructor'+0x3d
sqlmin!CBlobHandleFactoryMain::ReleaseILockBytes+0x13
sqlmin!CMainIlb::Release+0xf0
sqllang!CTraceRpcBinaryStream::~CTraceRpcBinaryStream+0x80
sqllang!CTraceTvpData::{dtor}+0x11
sqllang!CRpcTraceHelper::CleanUpTraceTvpData+0x55
sqllang!CRpcTraceHelper::TracePostExec+0x1bf
sqllang!CRPCExecEnv::OnExecFinish+0xaa
sqllang!CProtocolHeaderInfo::{dtor}+0xffffffff`ffb158e2
sqllang!process_request+0x764
sqllang!process_commands+0x51c
sqldk!SOS_Task::Param::Execute+0x21e
sqldk!SOS_Scheduler::RunTask+0xa8
sqldk!SOS_Scheduler::ProcessTasks+0x29a
sqldk!SchedulerManager::WorkerEntryPoint+0x261
sqldk!SystemThread::RunWorker+0x8f
sqldk!SystemThreadDispatcher::ProcessWorker+0x3c8
sqldk!SchedulerManager::ThreadEntryPoint+0x236
kernel32!BaseThreadInitThunk+0x1a
ntdll!RtlUserThreadStart+0x1d

Status

Microsoft heeft bevestigd dat dit probleem kan optreden in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op'.

Author: jannaw
Writer: v-yipli
Tech Reviewer: pradm; jannaw; hozhan
Editor: v-mordew

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.

Was deze informatie nuttig?

Hoe tevreden bent u met de taalkwaliteit?
Wat heeft uw ervaring beïnvloed?
Als u op Verzenden klikt, wordt uw feedback gebruikt om producten en services van Microsoft te verbeteren. Uw IT-beheerder kan deze gegevens verzamelen. Privacyverklaring.

Hartelijk dank voor uw feedback.

×