Microsoft KB Archive/933508

= Microsoft SQL Server 2005 Service Pack 2 issue: Cleanup tasks run at different intervals than intended =

Article ID: 933508

Article Last Modified on 11/20/2007

-

APPLIES TO


 * Microsoft SQL Server 2005 Standard Edition
 * Microsoft SQL Server 2005 Standard X64 Edition
 * Microsoft SQL Server 2005 Standard Edition for Itanium-based Systems
 * Microsoft SQL Server 2005 Developer Edition
 * Microsoft SQL Server 2005 Enterprise Edition
 * Microsoft SQL Server 2005 Enterprise X64 Edition
 * Microsoft SQL Server 2005 Enterprise Edition for Itanium-based Systems
 * Microsoft SQL Server 2005 Workgroup Edition

-



SUMMARY
If you apply the initial release version of Microsoft SQL Server 2005 Service Pack 2 (SP2), existing SQL Server 2005 maintenance plans and Integration Services packages that contain cleanup tasks run those tasks at shorter intervals. The issue occurs only if all the following conditions are true:
 * You downloaded SQL Server 2005 SP2 before March 05, 2007, and installed that download package.
 * You use SQL Server 2005 maintenance plans or Integration Services packages.
 * Those plans or packages include History Cleanup tasks or Maintenance Cleanup tasks.

The resolution for this issue is described in the &quot;Resolution&quot; section.

Users of SQL Server 2000 legacy maintenance plans and users who downloaded SP2 after March 05, 2007 are not affected. On this date, SQL Server 2005 SP2 was refreshed to include an update that avoids this issue.

Note This problem only affects the main SQL Server 2005 SP2 packages. These packages use the following naming convention:

SQLServer2005SP2-KB921896- - .exe

This problem does not affect SQL Server 2005 Express Edition or SQL Server 2005 Feature Pack packages.

The following table lists the file version of the affected version of the SQL Server 2005 SP2 package together with the refreshed version of this package.

Important The fix that is included in the refreshed version of the SQL Server 2005 SP2 package is included in all later SQL Server 2005 hotfix packages.



BACKGROUND
When SQL Server 2005 was released, cleanup intervals were measured in days, in weeks, in months, or in years. In response to customer feedback, SQL Server 2005 SP2 includes significant enhancements to maintenance plans. These include an enhancement that lets users specify the cleanup interval in hours.

The change in intervals caused the initial release version of SQL Server 2005 SP2 to interpret cleanup task intervals differently than the original settings. This behavior can cause cleanup tasks to delete information earlier than intended.

The change in intervals also caused different interpretations of cleanup task intervals if you mixed versions of the tools and of the servers. Although the original release version of SQL Server 2005 (the RTM version), SQL Server 2005 Service Pack 1 (SP1), and the SQL Server 2005 SP2 refresh are compatible, mixing these versions with the initial release version of SQL Server 2005 SP2 could lead to task intervals being interpreted incorrectly in new and modified tasks:  If you create or modify plans or packages by using the original release version of SQL Server 2005, SQL Server 2005 SP1, or the refreshed SQL Server 2005 SP2 tools, and then you run them on the initial release version of SQL Server 2005 SP2, most cleanup task intervals are shorter than intended. This behavior could delete information earlier than intended. If you create or modify plans or packages by using the initial release version of SQL Server 2005 SP2 tools and then run them on the original release version of SQL Server 2005, SQL Server 2005 SP1, or the SQL Server 2005 SP2 refresh, cleanup task intervals are longer than intended. This behavior could retain information longer than intended. If you create or modify plans or packages by using the initial release version of SQL Server 2005 SP2 tools, select the year interval, and then open the task in the original release version of SQL Server 2005 or in SQL Server 2005 SP1, the following error can occur:

InvalidArgument=Value of '4' is not valid for 'SelectedIndex'.

Parameter name: SelectedIndex (System.Windows.Forms)

If you ignore the message and save the package, the original release version of SQL Server 2005 and SQL Server 2005 SP1 misinterpret the cleanup interval as days, and information is deleted earlier than intended.



If you have not installed SQL Server 2005 SP2
The original release version of SQL Server 2005 and SQL Server 2005 SP1 do not have this issue, and the current SQL Server 2005 SP2 download is updated to resolve this issue. If you have not installed the initial release version of SP2, you can download the current release and install it.

Note If you try to apply the SP2 refresh over a previous SP2 installation, no files are updated. Instead, use the general distribution release (GDR) update below.

If you downloaded SQL Server 2005 SP2 before March 05, 2007
If you downloaded SQL Server 2005 SP2 before March 05, 2007, apply the general distribution release (GDR) update for those SQL Server 2005 SP2 installations. The GDR update is available at the Microsoft Download Center:

Critical Update for SQL Server 2005 Service Pack 2

This GDR update is also available through Microsoft Update. This GDR update is applied automatically if you are using automatic updates. However, if you are using failover clustering, you must manually download the GDR update and apply the GDR update. Microsoft Update does not apply the GDR update to failover cluster nodes.

After you apply this GDR update, you might have to restart the computer.

The GDR update corrects the interpretation of cleanup tasks that were created by using the original release version of SQL Server 2005 and by using SQL Server 2005 SP1. If you created or edited maintenance plans or Integration Services packages by using the initial release version of SQL Server 2005 SP2, you must verify and update the cleanup task intervals after you apply the GDR update. If you do not do this, cleanup tasks will retain data longer than intended.

To verify and update cleanup task intervals, follow these steps:
 * 1) Open the maintenance plan or the Integration Services package.
 * 2) Open each cleanup task.
 * 3) Adjust the cleanup interval to the correct value.
 * 4) Save the plan or the package.

When you specify a server, the SQL Server 2005 SP2 Maintenance Plan Utility can identify maintenance plans that were edited by using the original release version of SQL Server 2005 SP2. You can use this information to limit the number of plans that must be inspected. To obtain this utility, visit the following Microsoft Web site:

http://www.microsoft.com/downloads/details.aspx?FamilyID=864ee539-85ce-429c-a166-4c84cdb24b54&displaylang=en

Files that are updated by the GDR update and by the SP2 refresh
Tests to determine which version of SQL Server 2005 SP2 is installed should inspect the file in %ProgramFiles%\Microsoft SQL Server\90\DTS\Tasks. If the SP2 file version is greater than or equal to 9.00.3017.00 and less than 9.00.3042.00, the SP2 version is pre-release and you should install the SP2 refresh. If the file version equals 9.00.3042.00, the version is the initial SP2 release, and you should apply the GDR update.

The GDR update detects file versions and updates the files as necessary. However, if you need to verify file versions, you can use Microsoft Windows Explorer or the Filever command-line utility:  To check the file version on individual computers, open Windows Explorer, right-click the file, select Properties, and then click the Version tab. To help with checking file versions on many computers, the Filever command-line utility is available. For more information about the Filever command-line utility, click the following article number to view the article in the Microsoft Knowledge Base:

913111 How to use the Filever.exe tool to obtain specific information about a file in Windows

</ul>

Files that are updated by all SQL Server 2005 hotfixes and GDR updates
Some files are updated by every SQL Server 2005 hotfix and GDR update, even if no changes were made in the source code. For example, if Sqlservr.exe is updated, SELECT @@version shows an updated product version.

The following table lists the files that are updated regardless of code changes.

<div class="workaround_section">

WORKAROUND
If you do not apply the GDR update, you can manually update your cleanup task intervals by using matching server and tool versions. If you later apply this or any subsequent SQL Server 2005 update, you must verify and update cleanup task intervals. For this reason, we recommend that you apply the GDR update.

<div class="moreinformation_section">

PRODUCT SUPPORT
For a complete list of Microsoft Product Support Services telephone numbers and information about support costs, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support

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 usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

<div class="moreinformation_section">

MORE INFORMATION
This hotfix is also included in the cumulative update package (build 3161) for SQL Server 2005 Service Pack 2. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

935356 Cumulative update package (build 3161) for SQL Server 2005 Service Pack 2 is available

Keywords: kbprb atdownload kbexpertiseadvanced kbsql2005tool KB933508

-

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

© Microsoft Corporation. All rights reserved.