Microsoft KB Archive/274265

= FIX: AV Marshalling the Same ADO Recordset on Multiple Threads =

Article ID: 274265

Article Last Modified on 9/26/2005

-

APPLIES TO


 * Microsoft Data Access Components 2.6
 * Microsoft Data Access Components 1.5
 * Microsoft Data Access Components 2.0
 * Microsoft Data Access Components 2.1
 * Microsoft Data Access Components 2.5

-



This article was previously published under Q274265



SYMPTOMS
When sharing a single instance of a disconnected ActiveX Data Objects (ADO) Recordset object over multiple threads on a multiprocessor computer, an access violation (AV) may occur when simultaneously marshalling the recordset to two threads.



CAUSE
The ADO marshalling code for disconnected recordsets is not thread-safe for multiprocessor computers.



RESOLUTION
To resolve this problem, obtain the latest service pack for Microsoft MDAC 2.5. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

293312INFO: How to Obtain the Latest MDAC 2.5 Service Pack

-or-To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

260910 How to Obtain the Latest Windows 2000 Service Pack

The English version of this fix should have the following file attributes or later:

 Date       Version      Size     File name   Platform -- 02/20/2001 2.53.7220.0  327,952  Msadce.dll    x86 02/20/2001 2.53.7220.0  205,072  Msdaprst.dll  x86



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Microsoft MDAC 2.5 Service Pack 3. This problem was first corrected in Windows 2000 Service Pack 3.



MORE INFORMATION
To reproduce this problem, the following conditions must be met:
 * 1) A single disconnected ADO recordset is stored in some process global location.
 * 2) Two threads simultaneously attempt to marshall this one global recordset at exactly the same time.
 * 3) The above marshalling occurs on a multiprocessor computer. This problem has not been reported or reproduced on a single processor computer.

Additional query words: kbMDAC

Keywords: kbbug kbfix kbqfe kbwin2000sp3fix kbmdac250sp3fix kbhotfixserver KB274265

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.