Article ID: 978791 - Last Review: October 7, 2011 - Revision: 3.0
FIX: Data loss may occur if the database mirroring thread stops responding for a long time during an automatic failover process in SQL Server 2005 or in SQL Server 2008
System TipThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.
In Microsoft SQL Server 2005 or in Microsoft SQL Server 2008, SQL Server automatically starts the failover process by using database mirroring. This behavior occurs if the message process thread of database mirroring stops responding for a long time. In this situation, data loss may occur.
Note Even when all these conditions are true, this problem rarely occurs.
You encounter this problem when the following sequence of events occurs:
Database mirroring is configured to fail over automatically.
Both the witness server and the mirror server are running correctly.
The message processing thread of the database mirroring that is running on the original principal server stops responding for some time. This period of time is longer than the database mirroring session time-out. By default, the value of the time-out is set to 10 seconds.
Database mirroring starts to fail over automatically to the mirror server.
A transaction commits on the original principal database. This operation occurs after the thread stops responding and before the original principal database reestablishes its role.
The first message that is received by the original principal server comes from the witness server and not from the mirroring partner.
Note At this point, the original mirror server is serving the database as the principal server.
The transaction that committed on the original principal database is lost.
The fix for this issue was first released in Cumulative Update 8 for SQL Server 2005 Service Pack 3. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
978915
(http://support.microsoft.com/kb/978915/LN/
)
Cumulative update package 8 for SQL Server 2005 Service Pack 3
Note
Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2005 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
-
960598
(http://support.microsoft.com/kb/960598/LN/
)
The SQL Server 2005 builds that were released after SQL Server 2005 Service Pack 3 was released
Microsoft SQL Server 2005 hotfixes are created for specific SQL Server service packs. You must apply a SQL Server 2005 Service Pack 3 hotfix to an installation of SQL Server 2005 Service Pack 3. By default, any hotfix that is provided in a SQL Server service pack is included in the next SQL Server service pack.
The fix for this issue was first released in Cumulative Update 10. For more information about how to obtain this cumulative update package for SQL Server 2008, click the following article number to view the article in the Microsoft Knowledge Base:
979064
(http://support.microsoft.com/kb/979064/
)
Cumulative update package 10 for SQL Server 2008
Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
956909
(http://support.microsoft.com/kb/956909/
)
The SQL Server 2008 builds that were released after SQL Server 2008 was released
The fix for this issue was first released in Cumulative Update 7 for SQL Server 2008 Service Pack 1. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
979065
(http://support.microsoft.com/kb/979065/LN/
)
Cumulative update package 7 for SQL Server 2008 Service Pack 1
Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
970365
(http://support.microsoft.com/kb/970365/LN/
)
The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 1 was released
Microsoft SQL Server 2008 hotfixes are created for specific SQL Server service packs. You must apply a SQL Server 2008 Service Pack 1 hotfix to an installation of SQL Server 2008 Service Pack 1. By default, any hotfix that is provided in a SQL Server service pack is included in the next SQL Server service pack.
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem.
If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.
Prerequisites
You must have SQL Server 2005, SQL Server 2005 Service Pack 3 (SP3), or SQL Server 2008 Service Pack 1 (SP1) installed to apply this hotfix.
Restart requirement
You do not have to restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.