OPRAVA: Nízký výkon po worktables označené pro odložené přetažení jsou vyčištěna SQL Server 2008 R2

CHYBA č: 141338 (Údržba obsahu)VSTS: 674466

Společnost Microsoft distribuuje opravy Microsoft SQL Server 2008 R2 jako jeden soubor ke stažení. Protože jsou kumulativní opravy, každá nová verze tedy obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2008 R2 release.

Příznaky

Jde o takovouto situaci:

  • Máte vysoce výkonný počítač, který má mnoho procesorů. Například v počítači je 32 fyzických procesorů a 512 gigabajtů (GB) paměti RAM.

  • V počítači je spuštěn Microsoft SQL Server 2008 R2.

  • Aplikace, která běží na serveru provede dotazy, které vytvářejí mnoho worktables v databázi tempdb.

V tomto scénáři může zobrazit chybová zpráva podobná následující v protokolu chyb serveru SQL Server:


Kromě toho USERSTORE_SCHEMAMGR SQL Server mezipaměti obsahuje mnoho položek a rychle roste.

Příčina

K tomuto problému dochází, když mnoho worktables jsou označeny pro odložené přetažení. Mnoho worktables označení pro odložené přetažení, proces čištění může trvat velmi dlouhou dobu na dokončení.

Řešení

Informace o kumulativní aktualizaci

SQL Server 2008 R2 Service Pack 1


Oprava tohoto problému byla vydána nejprve v kumulativní aktualizaci 1 pro SQL Server 2008 R2 Service Pack 1. Další informace o možnostech získání tohoto balíčku kumulativní aktualizace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:

2544793 balíček kumulativní aktualizace 1 pro SQL Server 2008 R2 Service Pack 1Poznámka: Vzhledem k tomu, sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2008 R2 release. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje tuto opravu hotfix. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:

2567616 SQL Server 2008 R2 sestavení, které byly vydány po vydání SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

Oprava tohoto problému byla vydána nejprve v kumulativní aktualizaci 5. Další informace o možnostech získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 R2 klepněte na následující číslo článku databáze Microsoft Knowledge Base:

2507770 kumulativní aktualizace 7 pro SQL Server 2008 R2Poznámka: Vzhledem k tomu, sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2008 R2 release. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje tuto opravu hotfix. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:

981356 SQL Server 2008 R2 sestavení, které byly vydány po vydání SQL Server 2008 R2

SQL Server 2008

Tento problém vyřešíte pomocí nejnovější aktualizace service pack pro SQL Server 2008. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:

968382 jak získat nejnovější aktualizaci service pack pro SQL Server 2008

Informace o opravě hotfix

Společnost Microsoft má k dispozici podporovanou opravu hotfix. Tato oprava hotfix je však určena pouze problému popsanému v tomto článku. Tuto opravu hotfix instalujte pouze do systémů, ve kterých dochází k potížím popsaným v tomto článku. Tato oprava hotfix může být dále testována. Proto pokud nejste vážně ohrožen tímto problémem, doporučujeme počkat na další aktualizaci softwaru, která obsahuje tuto opravu hotfix.


Pokud je oprava hotfix k dispozici ke stažení, je v horní části tohoto článku znalostní báze Knowledge Base oddíl "Oprava Hotfix je dostupná ke stažení" . Pokud tato sekce není uvedena, obraťte se na Zákaznický servis a podporu společnosti Microsoft k získaní opravy hotfix.


Poznámka: Pokud nastanou další problémy nebo bude nutné další řešení potíží, bude možná třeba vytvořit další samostatný požadavek na služby. Běžná cena za technickou podporu se vztahuje k dodatečným otázkám podpory a k problémům, které se netýkají této konkrétní opravy hotfix. Pro úplný seznam telefonních čísel společnosti Microsoft Zákaznikého servisu a podpory nebo chcete-li vytvořit zvláštní požadavek na službu navštivte následující web společnosti Microsoft:

http://support.microsoft.com/contactus/?ws=supportPoznámka: Ve formuláři „Oprava hotfix je dostupná ke stažení“ se zobrazují jazyky, pro které je oprava hotfix k dispozici. Pokud váš jazyk není zobrazen, to je protože oprava hotfix není k dispozici pro daný jazyk.


Předpoklady

Chcete-li nainstalovat tuto opravu hotfix, musí mít Microsoft SQL Server 2008 R2.

Požadavek na restartování

Bude pravděpodobně nutné restartovat počítač po instalaci této opravy hotfix.

Informace o nahrazení opravy hotfix

Tato oprava hotfix nenahrazuje dříve vydanou opravu hotfix.

Informace o souborech

Anglická verze této opravy hotfix má atributy (nebo pozdější atributy souborů) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.

Pro všechny podporované 32bitové verze SQL Server 2008 R2 databáze služby Core instance

Název souboru

Verze souboru

Velikost souboru

Datum

Čas

Platforma

Atxcore.dll

2009.100.1766.0

26,464

24-Feb-2011

01:49

x86

Datacollectorcontroller.dll

2009.100.1766.0

135,520

24-Feb-2011

01:49

x86

Etwcls.mof

Není k dispozici

1,116,328

22-Feb-2011

14:29

Není k dispozici

Instmsdb.sql

Není k dispozici

2,241,260

22-Feb-2011

12:53

Není k dispozici

Mssqlsystemresource.ldf

Není k dispozici

524,288

22-Feb-2011

15:01

Není k dispozici

Mssqlsystemresource.mdf

Není k dispozici

63,569,920

22-Feb-2011

15:01

Není k dispozici

Rsfxft.dll

2009.100.1766.0

21,344

24-Feb-2011

01:44

x86

Sql_engine_core_inst_keyfile.dll

2009.100.1766.0

13,664

24-Feb-2011

01:45

x86

Sqlaccess.dll

2009.100.1766.0

415,584

24-Feb-2011

01:44

x86

Sqlagent.exe

2009.100.1766.0

367,968

24-Feb-2011

01:49

x86

Sqlagent100_msdb_upgrade.sql

Není k dispozici

2,371,245

22-Feb-2011

14:28

Není k dispozici

Sqlos.dll

2009.100.1766.0

14,688

24-Feb-2011

01:37

x86

Sqlscriptdowngrade.dll

2009.100.1766.0

14,688

24-Feb-2011

01:37

x86

Sqlscriptupgrade.dll

2009.100.1766.0

4,611,424

24-Feb-2011

01:37

x86

Sqlservr.exe

2009.100.1766.0

42,918,752

24-Feb-2011

01:49

x86

Sqsrvres.dll

2009.100.1766.0

89,952

24-Feb-2011

01:37

x86

Pro všechny podporované 64bitové SQL Server 2008 R2 databáze služby Core instance

Název souboru

Verze souboru

Velikost souboru

Datum

Čas

Platforma

Atxcore.dll

2009.100.1766.0

31,584

24-Feb-2011

00:53

x64

Datacollectorcontroller.dll

2009.100.1766.0

262,496

24-Feb-2011

00:53

x64

Etwcls.mof

Není k dispozici

1,116,328

22-Feb-2011

14:29

Není k dispozici

Instmsdb.sql

Není k dispozici

2,241,260

22-Feb-2011

12:53

Není k dispozici

Mssqlsystemresource.ldf

Není k dispozici

524,288

22-Feb-2011

15:01

Není k dispozici

Mssqlsystemresource.mdf

Není k dispozici

63,569,920

22-Feb-2011

15:01

Není k dispozici

Rsfxft.dll

2009.100.1766.0

25,440

24-Feb-2011

00:50

x64

Sql_engine_core_inst_keyfile.dll

2009.100.1766.0

14,176

24-Feb-2011

00:53

x64

Sqlaccess.dll

2009.100.1766.0

403,296

24-Feb-2011

00:50

x86

Sqlagent.exe

2009.100.1766.0

428,384

24-Feb-2011

00:53

x64

Sqlagent100_msdb_upgrade.sql

Není k dispozici

2,371,245

22-Feb-2011

14:28

Není k dispozici

Sqlos.dll

2009.100.1766.0

15,712

24-Feb-2011

00:50

x64

Sqlscriptdowngrade.dll

2009.100.1766.0

15,712

24-Feb-2011

00:50

x64

Sqlscriptupgrade.dll

2009.100.1766.0

4,610,912

24-Feb-2011

00:50

x64

Sqlservr.exe

2009.100.1766.0

62,019,424

24-Feb-2011

00:53

x64

Sqsrvres.dll

2009.100.1766.0

105,824

24-Feb-2011

00:50

x64

Pro všechny podporované IA-64 systému SQL 2008 R2 databáze služby Core instance serveru

Název souboru

Verze souboru

Velikost souboru

Datum

Čas

Platforma

Atxcore.dll

2009.100.1766.0

63,328

24-Feb-2011

00:18

IA-64

Datacollectorcontroller.dll

2009.100.1766.0

477,024

24-Feb-2011

00:18

IA-64

Etwcls.mof

Není k dispozici

1,116,328

22-Feb-2011

14:29

Není k dispozici

Instmsdb.sql

Není k dispozici

2,241,260

22-Feb-2011

12:53

Není k dispozici

Mssqlsystemresource.ldf

Není k dispozici

524,288

22-Feb-2011

15:01

Není k dispozici

Mssqlsystemresource.mdf

Není k dispozici

63,569,920

22-Feb-2011

15:01

Není k dispozici

Rsfxft.dll

2009.100.1766.0

56,160

24-Feb-2011

00:15

IA-64

Sql_engine_core_inst_keyfile.dll

2009.100.1766.0

19,296

24-Feb-2011

00:18

IA-64

Sqlaccess.dll

2009.100.1766.0

392,032

24-Feb-2011

00:15

x86

Sqlagent.exe

2009.100.1766.0

1,206,112

24-Feb-2011

00:21

IA-64

Sqlagent100_msdb_upgrade.sql

Není k dispozici

2,371,245

22-Feb-2011

14:28

Není k dispozici

Sqlos.dll

2009.100.1766.0

22,368

24-Feb-2011

00:12

IA-64

Sqlscriptdowngrade.dll

2009.100.1766.0

20,832

24-Feb-2011

00:11

IA-64

Sqlscriptupgrade.dll

2009.100.1766.0

4,617,056

24-Feb-2011

00:11

IA-64

Sqlservr.exe

2009.100.1766.0

121,779,040

24-Feb-2011

00:21

IA-64

Sqsrvres.dll

2009.100.1766.0

188,768

24-Feb-2011

00:11

IA-64

Pokud není tato oprava hotfix k volnému stahování (tj. v článku není uvedena veřejná adresa URL opravy hotfix), vyžaduje její distribuce technickým vedoucím, členem týmu a vedoucím přičemž následující předpoklady:

  • Opravu hotfix mohou získat zákazníci se vyskytla chyba, která je uvedena v části "Příznaky".

  • Musí sledovat zákazníci Chcete-li odeslat a dodat v další aktualizaci service Pack, až bude k dispozici (Pokud bude vydána aktualizace service pack).

Tato oprava hotfix je naplánováno mají být zahrnuty s Microsoft SQL Server 2008 R2 Service Pack 1 (SP1).

Části "Řešení" je uvedeno, zda je tato oprava hotfix je k dispozici jako oprava hotfix nebo v nejnovější aktualizaci service pack. Pro účely porovnání a testování je původní oprava hotfix k dispozici na webu http://hotfix .

Stav

Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".

Další informace

Worktables jsou vnitřní tabulky, které jsou vytvořeny v databázi tempdb a nejsou viditelné pro uživatele. Worktables používá SQL Server pro následující operace a objekty:

  • Kurzory

  • Proměnné (například Varchar(max)) LOB

  • Sloučit spojení

  • Paralelní dotazy

  • Operátory pro zařazování

  • Použití dokumentu XML

  • Service Broker

  • Kontrola konzistence databáze

SQL Server se pokusí umístit worktable dokončení určité práce. Pokud pokus nezdaří, je označen worktable vyčištění (odložené přetažení). Úloha na pozadí, který je odpovědný za záznam vyčištění Ghost provádí vyčištění worktables odložené přetažení.

Často vytvořené worktables úloha na pozadí může trvat dlouho vyčištění worktables odložené přetažení a může být mnoho worktables v mezipaměti. Tato kumulativní aktualizace používá algoritmus efektivnější vyčistit odložené pokles worktables. Problém popsaný v části "Příznaky" proto nedojde.

Informace v zásobníku volání

 0:051> kLChild-SP          Child-BSP         RetAddr           Call Site
00000081`9d75f010 00000081`9d760740 00000000`042bd8e0 sqlservr!BaseSharedHoBt::GetHoBtId+0x14
00000081`9d75f010 00000081`9d760740 00000000`0567dd80 sqlservr!HoBtFactory::GetDeferredDropCacheHobt+0x140
00000081`9d75f050 00000081`9d760698 00000000`02f1d4c0 sqlservr!DropDeferredWorkTables+0xb0
00000081`9d75f060 00000081`9d760620 00000000`018f5760 sqlservr!GhostRecordCleanupTask+0x153b060
00000081`9d75f2f0 00000081`9d7605f0 00000000`01970500 sqlservr!CGhostCleanupTask::ProcessTskPkt+0x20
00000081`9d75f2f0 00000081`9d760550 00000000`019e3020 sqlservr!TaskReqPktTimer::ExecuteTask+0x1c0
00000081`9d75f410 00000081`9d760490 00000000`019d27b0 sqlservr!OnDemandTaskContext::ProcessTskPkt+0x280
00000081`9d75f490 00000081`9d760460 00000000`01a05da0 sqlservr!SystemTaskContext::ExecuteFunc+0x50
00000081`9d75f490 00000081`9d7603c0 00000000`019b7680 sqlservr!SystemTaskEntryPoint+0x500
00000081`9d75fcf0 00000081`9d7603a0 00000000`01a4e140 sqlservr!OnDemandTaskContext::FuncEntryPoint+0x40
00000081`9d75fd00 00000081`9d760350 00000000`01a58850 sqlservr!SOS_Task::Param::Execute+0x260
00000081`9d75fd80 00000081`9d7602e8 00000000`01a56cf0 sqlservr!SOS_Scheduler::RunTask+0x110
00000081`9d75fd80 00000081`9d760218 00000000`01e6a390 sqlservr!SOS_Scheduler::ProcessTasks+0x130
00000081`9d75fdc0 00000081`9d7601c8 00000000`068c8da0 sqlservr!SchedulerManager::WorkerEntryPoint+0x210
00000081`9d75fe40 00000081`9d760190 00000000`76c28f90 sqlservr!SchedulerManager::FiberEntryPoint+0x100
00000081`9d75fe90 00000081`9d760150 00000000`76c28f10 kernel32!BaseFiberStart+0x70
00000081`9d75fea0 00000081`9d760150 00000000`76c28f10 kernel32!RtlCompareMemoryStub+0x70

Odkazy

Další informace o schéma názvů pro aktualizace serveru SQL Server klepněte na následující číslo článku databáze Microsoft Knowledge Base:

822499 nové schéma přidělování názvů pro Microsoft SQL Server software balíčky aktualizací.Pro další informace o terminologii používané v aktualizacích softwaru, klepněte na následující číslo článku k zobrazení článku v databázi Microsoft Knowledge Base:

824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft

Autor (MSP): sharxu
Zapisovatel: v-chsu; v-jayc
Odborný recenzent: fredep; sharxu; sqlprev; sqlblt
Redaktor: v-lynan; v-doskir

Potřebujete další pomoc?

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojit se k programu Microsoft Insider

Byly tyto informace užitečné?

Děkujeme za váš názor!

Děkujeme vám za váš názor! Pravděpodobně bude užitečné, když vás spojíme s některým z našich agentů podpory Office.

×