Microsoft KB Archive/323602

= BUG: The SQL Server VDI Backup and Restore Operations Are Not Successful and the CoCreateInstance Error Occurs =

Article ID: 323602

Article Last Modified on 12/1/2005

-

APPLIES TO


 * Microsoft SQL Server 2000 Standard Edition
 * Microsoft SQL Server 7.0 Standard Edition

-



This article was previously published under Q323602



IMPORTANT: This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows Registry

BUG #: 357231 (SHILOH_BUGS)



SYMPTOMS
Backup or restore operations that use the SQL Server Virtual Device Interface (VDI) may not succeed and SQL Server logs one of the following errors in the SQL Server error log:

BackupVirtualDeviceSet::Initialize: CoCreateInstance failure on backup device 'TDPSQL-00000798-0000'. Operating system error -2147467262 (No such interface supported).

-or-

BackupVirtualDeviceSet::Initialize: CoCreateInstance failure on backup device 'TDPSQL-00000036-0000'. Operating system error -2147221163 (Interface not registered).



CAUSE
This problem occurs because a worker thread in SQL Server that was previously initialized in the Component Object Model (COM) has remained in a single-threaded apartment (STA). This worker thread then tries to load the SQL Server VDI. Because the SQL Server VDI is free threaded, it cannot be loaded to an STA, and one of error messages that is listed in the &quot;Symptoms&quot; section occur.



WORKAROUND
WARNING: If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

To change the registered threading model for the SQL Server VDI:  Start Registry Editor (Regedt32.exe). Locate, and then click the following key in the registry:

HKEY_CLASSES_ROOT\CLSID\{40700425-0080-11d2-851f-00c04fc21759}\InprocServer32

 Edit the ThreadingModel value from Free to Both. Locate, and then click the following key in the registry:

HKEY_CLASSES_ROOT\CLSID\{b5e7a132-a7bd-11d1-84c2-00c04fc21759}\InprocServer32

 Edit the ThreadingModel value from Free to Both. Quit Registry Editor.</li> You may have to stop, and then restart SQL Server for the workaround to take affect.</li></ol>

<div class="status_section">

STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

<div class="moreinformation_section">

MORE INFORMATION
For more information about how to use the SQL Server VDI, see the &quot;Virtual Backup Device Samples&quot; topic in SQL Server Books Online.

Keywords: kbbug kbpending KB323602

-

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

© Microsoft Corporation. All rights reserved.