FIX: MSMQ Causes an Access Violation on Fast Multiple Processor Computers (274753)
The information in this article applies to:
- Microsoft Message Queuing 2.0
This article was previously published under Q274753 SYMPTOMS
The Microsoft Message Queuing (MSMQ) Service may cause an access violation. When the correct symbol set is used, a stack similar to the following occurs:
Scheduler::Wakeup(Scheduler * const 0x00000000, __int64 125902015235310796) line 250 + 22 bytes
Scheduler::ProcessScheduledEvents(Scheduler * const 0x00000000) line 335
Scheduler::SchedulerThread(void * 0x0050b550) line 193
CAUSE
The scheduler wakeup list is being corrupted by a race condition that is exposed on fast multiple processor computers. The problem occurs because of an attempt to insert an additional timer object into the scheduler when one already exists.
RESOLUTIONA supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem. This fix may receive additional testing. Therefore, if you are not severely affected by this problem, Microsoft recommends that you wait for the next Windows 2000 service pack that contains this hotfix. To resolve this problem immediately, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site: NOTE: In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The typical support costs will apply to additional support questions and issues that do not qualify for the specific update in question.
The English version of this fix should have the following file attributes or later:
Date Time Version Size File name Platform
----------------------------------------------------------------
8/26/2000 8:56a 710 284,672 Mq1repl.dll x86
8/26/2000 8:56a 710 219,136 Mqads.dll x86
8/15/2000 3:23a 710 69,904 Mqcert.dll x86
8/26/2000 8:56a 710 30,208 Mqcertui.dll x86
8/26/2000 8:56a 710 50,688 Mqclus.dll x86
8/26/2000 8:56a 710 31,744 Mqdbodbc.dll x86
8/26/2000 8:56a 710 77,312 Mqdscli.dll x86
8/26/2000 8:56a 710 43,008 Mqdssrv.dll x86
8/15/2000 3:24a 710 69,904 Mqkeyhlp.dll x86
8/26/2000 8:56a 710 268,288 Mqmigrat.dll x86
8/26/2000 8:56a 710 232,448 Mqoa.dll x86
8/26/2000 8:56a 710 8,704 Mqperf.dll x86
8/26/2000 8:56a 710 431,616 Mqqm.dll x86
8/26/2000 8:56a 710 9,216 Mqrperf.dll x86
8/26/2000 8:56a 710 94,208 Mqrt.dll x86
8/26/2000 8:56a 710 71,680 Mqsec.dll x86
8/26/2000 8:56a 710 428,032 Mqsnap.dll x86
8/26/2000 8:56a 710 110,592 Mqutil.dll x86
8/26/2000 8:56a 710 68,608 Msmq.cpl x86
STATUSMicrosoft has confirmed that this is a problem in MSMQ 2.0. MORE INFORMATION
When multiple worker threads are flushing messages, only one timer object should be active at a time.
Modification Type: | Minor | Last Reviewed: | 10/7/2005 |
---|
Keywords: | kbbug kbfix KB274753 |
---|
|