CORRECTIF : DBCC CHECKDB peut provoquer une violation d'accès lorsque la base de données est en cours d'utilisation

Ancien nº de publication de cet article : F293292
Cet article a été archivé. Il est proposé « en l'état » et ne sera plus mis à jour.
N° DE BOGUE : 351941 (SHILOH_BUGS)
Symptômes
La commande DBCC CHECKDB peut provoquer une violation d'accès quand elle est exécutée sur une base de données à laquelle d'autres utilisateurs accèdent activement au même moment.
Résolution
Pour résoudre ce problème, procurez-vous le dernier Service Pack de SQL Server 2000. Pour plus d'informations, consultez l'article suivant dans la Base de connaissances Microsoft :
290211 INF : Procédures pour obtenir le dernier Service Pack de SQL Server 2000
Contournement
Exécutez DBCC CHECKDB en mode Utilisateur unique ou lorsque la charge de travail est faible.
Statut
Microsoft a confirmé l'existence de ce problème dans SQL Server 2000. Ce problème a été corrigé dans le Service Pack 1 de SQL Server 2000.
Plus d'informations
La violation d'accès entraîne la rupture de la connexion à partir de laquelle est exécutée la commande DBCC CHECKDB ; cependant, la base de données ne subit aucun dommage. Vous pouvez redémarrer la commande en toute sécurité, de préférence à un moment où la charge de travail est faible.

Il se peut que la trace de la pile suivante figure dans le journal d'erreurs :
2001-01-16 13:47:54.86 spid59    SqlDumpExceptionHandler: Le processus 2624 a généré une exception fatale c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server termine ce processus.********************************************************************************* DÉBUT DU VIDAGE DE LA PILE :*   01/16/01 13:47:54 spid 59**   Adresse d'exception = 008DBAD2 (CheckTables::PageUpdate(class CheckRecInfo &,unsigned char,unsigned char) + 00000092 Line 0+00000000)*   Code d'exception    = c0000005 EXCEPTION_ACCESS_VIOLATION*   Violation d'accès lors de la lecture de l'adresse 00000012* Mémoire tampon d'entrée 50 octets -*  dbcc checkdb([MSSales])  *  Extrait du vidage de la pile008DBAD2 Module(sqlservr+004DBAD2) (CheckTables::PageUpdate(class CheckRecInfo &,unsigned char,unsigned char)+00000092)008E88B9 Module(sqlservr+004E88B9) (CheckTables::ProcessLogModifyRow(class PageLog const *,class CheckRecInfo &,unsigned char,enum LOGR_UNDO_FLAG)+00000208)008C91D1 Module(sqlservr+004C91D1) (CheckAggregate::ProcessLog(class LogRec const *,class CheckRecInfo &,enum LOGR_UNDO_FLAG)+000000B6)008C938E Module(sqlservr+004C938E) (CheckAggregate::ProcessLogRecord(class LogRec const *,class LSN const &,enum LOGR_UNDO_FLAG)+0000009E)008DB1F3 Module(sqlservr+004DB1F3) (CheckLogReader::ReadLog(int (__cdecl*)(class LogRec const *,class LSN const &,enum LOGR_UNDO_FLAG),class CAutoLatch &)+00000303)008DB495 Module(sqlservr+004DB495) (CheckLogReader::ScanLog(int (__cdecl*)(class LogRec const *,class LSN const &,enum LOGR_UNDO_FLAG))+000000D6)008C8EA1 Module(sqlservr+004C8EA1) (CheckAggregate::GetNextFact(void)+000000F2)008EB20E Module(sqlservr+004EB20E) (CTRowsetInstance::FGetNextRow(void)+00000216)0091FD06 Module(sqlservr+0051FD06) (CUtRowset::GetNextRows(unsigned long,long,long,unsigned long *,unsigned long * *)+00000050)0070FAA3 Module(sqlservr+0030FAA3) (CQScanRmtScan::GetRow(unsigned long *,unsigned long *)+00000155)00719763 Module(sqlservr+00319763) (CQScanXProducer::Open(unsigned long *)+0000039B)007191AA Module(sqlservr+003191AA) (FnProducerThread(void *)+0000022C)004DF8D2 Module(sqlservr+000DF8D2) (subproc_main(void *)+000000E3)410735D0 Module(UMS+000035D0) (ProcessWorkRequests(class UmsWorkQueue *)+00000264)4107382C Module(UMS+0000382C) (ThreadStartRoutine(void *)+000000BC)7800BEA1 Module(MSVCRT+0000BEA1) (_beginthread+0000008B)77E837CD Module(KERNEL32+000037CD) (_BaseThreadStart@8+00000052)-------------------------------------------------------------------------------Dump thread - spid = 59, PSS = 0x4a569228, EC = 0x4a569538Stack Dump being sent to d:\MSSQL\log\SQL00164.dmp
Propriétés

ID d'article : 293292 - Dernière mise à jour : 01/16/2015 22:03:03 - Révision : 3.1

  • Microsoft SQL Server 2000 Standard
  • kbnosurvey kbarchive kbbug kbfix kbsqlserv2000bug kbsqlserv2000sp1fix KB293292
Commentaires