Search

Performance counter registry hive consistency check failed at Traditional Chinese Windows Server 2003 by ChrisTorng

Closed
as Fixed Help for as Fixed

12
0
Sign in
to vote
Type: Bug
ID: 312847
Opened: 11/27/2007 11:14:05 PM
Access Restriction: Public
2
Workaround(s)
10
User(s) can reproduce this bug
311246 "SQL Server 2008 Nov CTP Installation error" had been closed by OS issue.
And I have resolve this problem by myself.

I open setup log "\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\20071128_1313\xxxx_20071128_1313_Detail.txt" and found the error was raised from
"Microsoft.SqlServer.Configuration.SetupExtension.FacetPerfMonCheck"
I use Reflector to open "\Program Files\Microsoft SQL Server\100\Setup Bootstrap\
Microsoft.SqlServer.Configuration.SetupExtension.dll" and found
"FacetPerfMonCheck.CheckPerfMonCounter()" function.
After write my own small program to show the values inside it,
I found the problem is a wrong LCID.

The second line is:
string str2 = string.Format("{0,3}", CultureInfo.InstalledUICulture.Parent.LCID.ToString("X")).Replace(" ", "0");

In my Windows Vista Ultimate SP1 RC0 Traditional Chinese and
Windows Server 2003 Standard SP2 Traditional Chinese, it return "7C04".
Then it want to open the registry key
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\7C04" but not exists.
My Vista have "009" and "0404", Windows Server 2003 have "004" and "009".
Neither have "7C04".
After copy "004"'s Counter/Help to new created "7C04" key, the setup passed.

So I don't know it's a wrong LCID that perfmon created, or a wrong LCID that setup searching.
But I know that if LCID can be "7C04", then string.Format("{0,3}", LCID) is incorrect.
So english Windows maybe won't encounter this problem, but other language Windows may. Previous issue was been reported all by Traditional Chinese Windows users, so I still think the wrong is setup itself, so I open this bug.
Details (expand)
Product Language
English

Version

SQL Server 2008 November CTP

Category

Setup

Operating System

Win2003 Standard Server (SP2)
Operating System Language
Chinese (Traditional)
Steps to Reproduce
Run setup from Windows Server 2003 Standard SP2 Traditional Chinese.
Actual Results
Performance counter registry hive consistency check failed
The performance counter registry hive is corrupted.
Expected Results
Pass System Configuration Check.

Platform

32
File Attachments
0 attachments
Sign in to post a comment.
Posted by Kostya Grygoryev - Managing Partner on 6/3/2011 at 5:12 AM
Reproduced as well on Windows 7 Russian Professional SP1 and just downloaded SQL Server 2008 Management Studio Express... It seems 3.5 years is not enough to fix the issue...
Hack with copying values from "009" hive works well.
Posted by Basaksan on 4/9/2010 at 4:47 AM
I reproduced the bug while installing SQL Server 2008 to a machine running Vista.

My Vista has Japanese as the InstalledUICulture and English as the CurrentUICulture. The following line produces "009" for English and "011" for Japanese.

string.Format("{0,3}", CultureInfo.InstalledUICulture.Parent.LCID.ToString("X")).Replace(" ", "0");

I have the performance counter registry keys "Counter" and "Help" under the key ...\Perflib\009 but not ...\Perflib\011. So like ChrisTrong did, I copied these keys to ...\Perflib\011 as a workaround. It worked.

Maybe the installer should use CurrentUICulture instead of InstalledUICulture.
Posted by Eric Ouellet on 1/28/2010 at 6:51 AM
This bug is back and probably never been solved.
I installed Windows Vista Enterprise French SP1. Then SP2 and the langage pack "english".
I try to install SQL Server 2008 english but failed with error:

"Performance counter registry hive consistency" >>>
Rule "Performance counter registry hive consistency" failed. ... see http://support.microsoft.com/This bug is back and probably never been solved.
I installed Windows Vista Enterprise French SP1. Then SP2 and the langage pack "english".
I try to install SQL Server 2008 english but failed with error:

"Performance counter registry hive consistency" >>>
Rule "Performance counter registry hive consistency" failed. ... see http://support.microsoft.com/kb/300956.

This knowledbase (kb/300956) can't be followed because the perf*.dat file does not exists in the setup. In fact there is no i386 folder at all on Windows Vista x64..

This knowledbase can't be followed because the perf*.dat file does not exists in the setup. In fact there is no i386 folder at all on Windows Vista x64.
Posted by Yuri de Jager on 5/20/2009 at 4:11 AM
Excellent. I created the missing REG entries after monitoring with Regmon and the inistallation continued.
Posted by immijs on 12/1/2008 at 1:02 AM
Thank You!
It was a great help. Solved a problem for Latvian Vista SP1
Posted by Jaimir Guerrero on 9/11/2008 at 8:05 PM
Thank,
It works for VISTA ULTIMATE SP1 SPANISH
Posted by Microsoft on 11/29/2007 at 3:08 PM
Chris -

We will be fixing this issue in a future CTP.

Thanks,

Amy Lewis
Sign in to post a workaround.
Posted by Damir Colak on 10/10/2009 at 6:43 PM
THIS BUG IS BACK WITH SQL2008, on VISTA SP1 SPANISH!
Posted by Adrian Nica on 2/16/2012 at 12:46 AM
This bug remains in windows 7 Romanian sp1.
Know anyones how to fix it ?
Tks !