Makale numarası: 815594 - Son Gözden Geçirme: 22 Eylül 2003 Pazartesi - Gözden geçirme: 3.2

Hata: Başarısız BIR onaylama işlemi sırasında bir BULK INSERT deyimi üretilen

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.
Hepsini aç | Hepsini kapa

Belirtiler

SQL Server tarafından DELETE deyimleri ardından sık sık, Döngüsel BULK INSERT deyimleri içeren bir işlemi sırasında aşağıdaki başarısız perakende onaylama işlemi neden olabilir. The assert üretmek için BULK INSERT aktivite nonlogged modunda çalışmalıdır:
	2003-02-18 20:59:45.83 spid54    SQL Server Assertion: File: <access.c>, line=3721 
	Failed Assertion = '(logMode != nonlogged) || (dbt->dbt_dbid == TEMPDBID)'.
Not nonlogged modunda işletmek için TABLOCK seçeneğini kullanın.

A call stack similar to the following is also generated in the SQL Server error log:
* -------------------------------------------------------------------------------
* Short Stack Dump
* 0087A90E Module(sqlservr+0047A90E) (CStackDump::GetContextAndDump+0000002E)
* 0087C41F Module(sqlservr+0047C41F) (stackTrace+00000223)
* 00931097 Module(sqlservr+00531097) (utassert_fail+000002E3)
* 008075E4 Module(sqlservr+004075E4) (ChangeGhostPageState+000000D5)
* 00808855 Module(sqlservr+00408855) (DataSplitMgr::SplitPage+000000F4)
* 00572C15 Module(sqlservr+00172C15) (indexsplit+00000068)
* 00572AE7 Module(sqlservr+00172AE7) (SplitIndexNode+0000003D)
* 00406CEC Module(sqlservr+00006CEC) (srchindex+000002C1)
* 004372AF Module(sqlservr+000372AF) (InsertRowIntoNCIndex+0000018A)
* 0080121A Module(sqlservr+0040121A) (RowsetSS::InsertRow+000000D1)
* 0040E01C Module(sqlservr+0000E01C) (CValRow::SetDataX+00000035)
* 0040AE83 Module(sqlservr+0000AE83) (SetDataWithPop+0000001C)
* 0041C5BE Module(sqlservr+0001C5BE) (CEs::GeneralEval4+00000075)
* 00486561 Module(sqlservr+00086561) (CQScanUpdate::GetRow+000001DA)
* 006F9B06 Module(sqlservr+002F9B06) (CQScanSequence::Open+000000DA)
* 004214C4 Module(sqlservr+000214C4) (CQueryScan::Startup+0000010D)
* 0041D505 Module(sqlservr+0001D505) (CStmtQuery::ErsqExecuteQuery+0000026B)
* 0041E09C Module(sqlservr+0001E09C) (CStmtDML::XretExecuteNormal+000002AE)
* 0041DECA Module(sqlservr+0001DECA) (CStmtDML::XretExecute+0000001C)
* 0041B442 Module(sqlservr+0001B442) (CMsqlExecContext::ExecuteStmts+000003B9)
* 0041AA88 Module(sqlservr+0001AA88) (CMsqlExecContext::Execute+000001B6)
* 0041B9B6 Module(sqlservr+0001B9B6) (CSQLSource::Execute+00000357)
* 0047F78C Module(sqlservr+0007F78C) (CSQLSource::SeExecute+00000051)
* 0047F6DC Module(sqlservr+0007F6DC) (ExecSql+000000EA)
* 0047F590 Module(sqlservr+0007F590) (CBcpImport::ExecInsertStmt+00000447)
* 0047D869 Module(sqlservr+0007D869) (BcpImportMain+00000196)
* 0047D714 Module(sqlservr+0007D714) (CStmtBulkIns::XretExecute+0000005F)
* 0041B442 Module(sqlservr+0001B442) (CMsqlExecContext::ExecuteStmts+000003B9)
* 0041AA88 Module(sqlservr+0001AA88) (CMsqlExecContext::Execute+000001B6)
* 0041B9B6 Module(sqlservr+0001B9B6) (CSQLSource::Execute+00000357)
* 0048A63B Module(sqlservr+0008A63B) (language_exec+000003E1)
* 0042708C Module(sqlservr+0002708C) (process_commands+0000010E)
* 41075002 Module(UMS+00005002) (ProcessWorkRequests+00000272)
* 41074698 Module(UMS+00004698) (ThreadStartRoutine+00000098)
* 7800A27B Module(MSVCRT+0000A27B) (beginthread+000000CE)
* 77E8758A Module(KERNEL32+0000758A) (SetFilePointer+0000018A)
Additionally, after this type of process, if you then use DELETE operations on the BULK INSERT destination table, the DBCC CHECKDB and DBCC CHECKTABLE Transact-SQL references may report the following errors:
Sunucu: <a1>hata</a1> 8952, Düzey 16, State 1, 1 satır
Hata Tablo: Veritabanı 'BulkTest', <a1>Dizin</a1> 'FilterKeys.IX_FilterKeys_FileID' (2057058364 KIMLIĞI) (KIMLIĞI 2 dizin). Anahtarları için anahtar ek ya da geçersiz:
Sunucu: <a1>hata</a1> 8956, Düzey 16, State 1, 1 satır
Dizin değerleriyle (3: 12: 59) satır (Win32_filespecification '{B08ED36E-EADF-47DF-B426-A793C683BB4A}' =) ile tanımlanan <a1>veri</a1> satırına işaret eder (RID (3:46405:14) =).

Durum

Microsoft, bunun bu makalenin başında listelenen Microsoft ürünlerinde bir hata olduğunu onaylamıştır.

Neden

Bir dizin düğümde yeni oluşturulan bir dizin sayfasında "kayıtları itemiyor." içeren sonuçları bölmek için bir sayfaya bir BULK INSERT işlemi harekete geçirdiğinde bu hata oluşur. Denetim sayfası boş alan (PFS) sayfa hayalet kayıtları içeren olarak işaretlenmesi için yeni sayfa neden olan işlemi nonlogged bir işlemi sırasında ortaya çıkmaz.

Pratik Çözüm

Bu sorun, yalnızca bir yığında oluşur çünkü (veya bir SQL Server yok kümelenmiş bir dizin olan tablo), kümelenmiş bir dizin BULK INSERT put bu soruna geçici bir çözüm bulmak için hedef tablo.

Daha fazla bilgi

Bir eşzamanlılık en iyi duruma getirme DELETE işlem olarak hayalet kayıtları SQL Server'ı kullanır. Alanı bir satır (taşınabilir bir dizin yaprak sayfasından veya silindiğinde,), SQL Server'a hemen yayımlanmaz. Bunun yerine, bir "hayali." işaretlendi SQL Server sistem işlemi (Ghost kayıt Temizleme), zaman uyumsuz olarak, bu kayıtları kaldırmak için arka planda çalışır.

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft SQL Server 2000 Standard Edition
Anahtar Kelimeler: 
kbmt kbprb KB815594 KbMttr
Otomatik TercümeOtomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:815594  (http://support.microsoft.com/kb/815594/en-us/ )