This article has been archived. It is offered "as is" and will no longer be updated.
Consider the following scenario:
You have a computer that is running Microsoft SQL Server 2008 R2.
You open the SQL Server Management Studio tool, and then right-click Utility Information data collection set.
You click Collect and upload now, or you change the collection set properties.
In this scenario, you cannot upload the Utility Information data collection set. Additionally, you receive one of the following error messages.
Violation of PRIMARY KEY constraint 'PK_sysutility_cpu_memory_related_info_internal_clustered'. Cannot insert duplicate key in object 'snapshots.sysutility_ucp_cpu_memory_configurations_internal'.
Violation of PRIMARY KEY constraint 'PK_sysutility_volumes_info_internal'. Cannot insert duplicate key in object 'snapshots.sysutility_ucp_volumes_internal'.
To resolve this issue, you must delete the Data Collector’s cached files. To locate the Data Collector cache directory and to delete the cache files, follow these steps:
Run SQL Server Management Studio tool, and then connect to the instance of SQL Server 2008 R2 in which the error occurs.
Expand the Management folder, right-click Data Collection, and then click Properties.
If a directory is specified as a Cache directory directory, the directory that is specified is the location of the Data Collector cache files.
If a directory is not specified as a Cache directory directory, the default cache directory is the local temporary directory of the account that runs the collection set. This account may be the SQL Server Agent service account. For example, the collection set is run by an account that is named “sqlacct” in Windows Server 2008. In this example, the temporary directory of this account is located in a path that resembles the following:
Find all files that have a “.CACHE” file name extension, and then delete these files.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
To work around this issue, use one of the following methods.
Do not right-click the Utility Information collection set or click Collect and upload now.
Do not configure the collection set to run on a schedule.
The Utility Information collection set should be executed only by the “Sysutility_mi_collect_and_upload” SQL Server Agent job.
Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup