Horkay Blog
The postings on this site are my own and do not represent my Employer's positions, advice or strategies.
Thursday, January 31, 2008

tempDB, size it right; it is important.

use -T1118.

1 data file for every logical processor, 1 log file.  This seems excessive for a 4 way Quad core machine, 16 temporary database data files, each one at 2gb.  We'll see how this runs today.

Read the Microsoft white paper, it's got all the information.


WorkingWithTempDB.doc (301.5 KB) 

One Unexpected side effect of this is uncontrolled log file growth.  We have a 12gb log file and it was filling up quick, 2gb an hour.  While monitoring this you could see the log file growing continuously, if the log file were to fill up, it could cause an aotogrowth, an autogrowth in tempDB when you doing 1,000's of transactions per seconds will crash the server (ask me how i know!).  To keep this from happenning we implemented a job to checkpoint the tempDB Database every 30 minutes.  Hopefully when we ren't under such load it will ease up and begin checkpointing properly on it's own.  We did verify there are no uncommitted or long running transactions.


A table variable is created in memory, and so performs slightly better than #temp tables (also because there is even less locking and logging in a table variable). A table variable might still perform I/O to tempdb (which is where the performance issues of #temp tables make themselves apparent), though the documentation is not very explicit about this.


Table variables are automatically cleared when the procedure or function goes out of scope, so you don't have to remember to drop or clear the data (which can be a good thing or a bad thing; remember "release early"?). The tempdb transaction log is less impacted than with #temp tables; table variable log activity is truncated immediately, while #temp table log activity persists until the log hits a checkpoint, is manually truncated, or when the server restarts.

In an OLTP system that uses tempDB extensively it is important to monitor both the user and tempDB very closely.   

Thursday, January 31, 2008 7:40:29 AM (Central Standard Time, UTC-06:00) |  | SQL Server#
Monday, January 28, 2008

Oh why, why have the hotfixes become such a head ache, this one fought me quite a bit, but finally she gave in...

Also I usually extract the hotfix manually so I can review it, do this from a command prompt (remember to make the target directory).

c:\sqlserver2005-kb943656-x64-enu.exe /x:c:\sqlhotfix\

The errors seen with 3215 are (some of these we have see with other hotfixes as well).

  1. MSP Error: 29511  Failure creating local group IUSR_DEVPLYSQL01
  2. MSP Error: 29528  The setup has encountered an unexpected error while Setting Internal Properties. The error is: Fatal error during installation.
  3.  MSP Error: 29534  Service 'MSSQL$QAEAM' could not be started. Verify that you have sufficient privileges to start system services. The error code is (52) You were not connected because a duplicate name exists on the network. Go to System in Control Panel to change the computer name and try again.
  4. MSP Error: 29538  SQL Server Setup did not have the administrator permissions required to rename a file: f:\MSSQL\DATA\distmdl1.ldf. To continue, verify that the file exists, and either grant administrator permissions to the account currently running Setup or log in with an administrator account. Then run SQL Server Setup again.
  5. MSP Error: 29537  SQL Server Setup has encountered the following problem: [Microsoft][SQL Native Client][SQL Server]Cannot find the object 'dm_exec_query_resource_semaphores', because it does not exist or you do not have permission.. To continue, correct the problem, and then run SQL Server Setup again.

1st failure was a really strange one:

MSP Error: 29511  Failure creating local group IUSR_DEVPLYSQL01

As I didn't need IIS on this machine I deleted the account as it already existed, mistake there, this lead to the 2nd failure.

2nd failure was on:

MSP Error: 29528  The setup has encountered an unexpected error while Setting Internal Properties. The error is: Fatal error during installation.

This turned out to be a registry issue with deleting items, while not specifically addressing CU 5, it did fix the issue: (http://support.microsoft.com/kb/925976).

For a stand-alone installation of SQL Server 2005

1. Remove the following registry subkeys that store SID settings:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.X\Setup\ASGroup
Note In these registry subkeys, MSSQL.X is a placeholder for the corresponding value on a specific system. You can determine MSSQL.X on a specific system by examining the value of the MSSQLSERVER registry entry under the following registry subkey:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL\
2. Reinstall the SQL Server 2005 service pack or the SQL Server 2005 hotfix package.

Finally after all that it installed, as easy as could be !


Experienced this error too:

 MSP Error: 29534  Service 'MSSQL$QAEAM' could not be started. Verify that you have sufficient privileges to start system services. The error code is (52) You were not connected because a duplicate name exists on the network. Go to System in Control Panel to change the computer name and try again.


The above error is because of the tcp/ip stack being modified by polyserve, i correct this with a change in the registry networking settings.  I've had some questions on what I corrected, basically under Polyserve the virtual IP "floats" to whatever node is active, if for some reason, it is moved from one node to another, and not removed from the previous node...you run into an issue where that other node will not start, you'll receive some very nice errors like these in the sql server errorlog:

2008-05-10 20:52:42.83 Server      A self-generated certificate was successfully loaded for encryption.
2008-05-10 20:52:42.85 Server      Error: 26024, Severity: 16, State: 1.
2008-05-10 20:52:42.85 Server      Server failed to listen on <ipv4> 40020. Error: 0x2741. To proceed, notify your system administrator.
2008-05-10 20:52:42.85 Server      Error: 17182, Severity: 16, State: 1.
2008-05-10 20:52:42.85 Server      TDSSNIClient initialization failed with error 0x2741, status code 0xa.
2008-05-10 20:52:42.85 Server      Error: 17182, Severity: 16, State: 1.
2008-05-10 20:52:42.85 Server      TDSSNIClient initialization failed with error 0x2741, status code 0x1.
2008-05-10 20:52:42.85 Server      Error: 17826, Severity: 18, State: 3.
2008-05-10 20:52:42.85 Server      Could not start the network library because of an internal error in the network library. To determine the cause, review the errors immediately preceding this one in the error log.
2008-05-10 20:52:42.85 Server      Error: 17120, Severity: 16, State: 1.
2008-05-10 20:52:42.85 Server      SQL Server could not spawn FRunCM thread. Check the SQL Server error log and the Windows event logs for information about possible related problems.

This error happens because you can't have two sql server instances use the same IP Address, makes perfect sense when you think through it.

The real problem now that you have root cause, is how to fix it.  Polyserve performs some complex tasks with "swapping" registry entries and moving instances, this is not an easy issue to correct and you must be careful.  These errors rarely happen on version 3.6, but were pretty common on 3.4. 

I'd adise to engage HP / Polyserve support to correct the issue, and then as you become familiar with the SQL Registry and how polyserve works, this can be corrected quite easily yourself.

Depending on the scope of the problem you may only need to focus on the SuperSocketNetLib IP address entries.  The server that won't start will most likely contain the virtual ip, and there will be another node in your cluster already running the IP.  Sometimes you can edit the IP1, IP2 and IP3 to just reflect your Public, Private and loop Back IP Address.  But before starting SQL, Double check where your SQL Instances are "pointing" if they are pointing to the virtul root, than you have a bigger registry issue, and you must correct that too.

Very much fun !


Monday, January 28, 2008 10:36:07 PM (Central Standard Time, UTC-06:00) |  | Polyserve | SQL Server#

This could go under so many names:

theory meets reaility

Quad core vs dual core

8 procs vs 16 procs

Numa or non-numa


today the question was answere, 16 processors, quad core showed it could handle the load, though we crashed on cmemthread suddenly, hot fix 3 or 5 to the rescue.

Monday, January 28, 2008 9:00:12 PM (Central Standard Time, UTC-06:00) |  | #
Sunday, January 27, 2008

4 - Way Quad Core, 16 Processors, DONE.

Tonight is the fail over from 4 way dual core to 4 way quad core.

Interesting suttle changes as well, the dual core is AMD NUMA Architecture, the Quad core is Intel - NON NUMA.

Interesting to see, how the machine handles the load.  The current SQL Server is maxed out, all cpu's hitting 100% for sustained times, 4-6 hours.  Very little locking and blocking or disk i/o, all waits are on the SOS_SCHEDULER_YIELD.

Very difficult to recreate this issue or test in the lab, so the results are due tomorrow !



Sunday, January 27, 2008 5:18:43 PM (Central Standard Time, UTC-06:00) |  | Polyserve | SQL Server#

Been fighting this issue where a SQL Server 2005 instance hosted on polyserve would not allow the password policy enforcement.

Something of a fix:  http://support.microsoft.com/kb/926642/en-us

Sunday, January 27, 2008 5:14:40 PM (Central Standard Time, UTC-06:00) |  | Polyserve | SQL Server#
Friday, January 25, 2008

SQL Server 2005

AMD 4-way dual core, so 8 procs.

Maxed out.

1000-1200 concurrent connections

2200-2500 Transactions per second

Minimal pagine 2-5 pages / sec

4 gb of ram still available out of 32gb possible

Do Disk Queue, % disk time less than 10 %, spikes of course.

100 % cpu utilization, i'll see 400-500 runnable spids with a wait type of SOS_SCHEDULER_YIELD.

Tuning like crazy, everything we can find, even resorting to NoLocks in many places and dropping referential integrity.

New server on the way, Intel 4-way Quad core, hopefully it will help.

Friday, January 25, 2008 5:56:16 PM (Central Standard Time, UTC-06:00) |  | SQL Server#
Thursday, January 24, 2008

Under heavy load, does the default trace cost ?  I'm about to find out, as I'm turning it off.

SQL Server 2005, one instance, 64 bit EE, 32 gb of RAM, 4 Dual Core procs (so 8 procs), HP 585; big box, right ?

I'm running at 80-90 % cpu; across all 8....so I'm squeezing anything I can and part of that squeeze is turning the default trace off...

Also have change the max degree of parralellism to 4.

select * from sys.configurations where configuration_id = 1568

select * from ::fn_trace_getinfo(0)

sp_configure 'default trace enabled', 0

reconfigure with override

We'll see if it makes a difference today, i'd like to keep the cpu's out of the 90's !

Didn't help, maybe didn't hurt either, all CPU's (8 of them) pegged most of the day 94-100%

Thursday, January 24, 2008 8:09:31 AM (Central Standard Time, UTC-06:00) |  | SQL Server#
Monday, January 21, 2008

The fun of supporting 1000's of installations of SQL Server 2000 and 2005, is you get too see some fun stuff; 12 hours of research shows that when you have SQL Server 2000 and 2005 installed together and 2000 is installed after 2005, the SQL Server browser service does not work properly due to permissions issue in the registry.

For this particular problem, we are dealing with two instances of MSDE and an instance of SQL Express, installed as:  MSDE, SQL Express, MSDE.

After this install the following message is seen for the sql server browser service:  “The configuration of the instance {} is invalid” ,substitute your instance name in {}. pic:

Local connections using the shared libraries still work, but remote connections do not.  There is a MS KB Article that documents how installing SQL 2000 after 2005 affects the registry permissions causing the SQL Server browser service to be unable to read the registry.

Microsoft KB Article:  http://support.microsoft.com/kb/905618 



You may receive a connection error message if the following conditions are true:• You install Microsoft SQL Server 2000 or SQL Server 7.0 after you install SQL Server 2005.

• You try to connect to an instance that was created by SQL Server 2000 or by SQL Server 7.0.

This problem occurs if the connection string does not include the protocol-specific information, even if the SQL Server Browser service is still running.


In this scenario, the protocol-specific information depends on the information that is returned by the server. For example, you may receive the following error message when you connect to an instance by using the Sqlcmd utility (Sqlcmd.exe):

SQL Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF].

Sqlcmd: Error: Microsoft SQL Native Client : Client unable to establish connection.

Sqlcmd: Error: Microsoft SQL Native Client : Login timeout expired.

Back to the top



When you try to connect to an instance of SQL Server 2000 or of SQL Server 7.0, the SQL Server Browser service (Sqlbrowser) will try to obtain the required protocol information from the Microsoft Windows registry to relay to the client. Therefore, the SQL Server Browser service must have sufficient permissions to read the appropriate Windows registry for the instance.


When you set up SQL Server 2005, the registry keys for all existing instances are modified to enable the SQL Server Browser service to read the required protocol information. However, if you install an instance of SQL Server 2000 or of SQL Server 7.0 after you set up SQL Server 2005, the correct registry permissions are not set. The permissions are only modified when the SQL Server Browser service is installed. Specifically, if the startup account of the SQL Server Browser service is not an Administrators account, this account may not have the required access permissions to read the relevant keys of the instance.


Note In SQL Server 2000, the SQL Server service identifies the server connection endpoints. SQL Server 2005 replaces that function with the SQL Server Browser service. If you install SQL Server 2005 on a computer that is also running SQL Server 2000, you must install SQL Server 2000 Service Pack 3 (SP3), SQL Server 2000 SP3a, or SQL Server 2000 SP4 on that computer.

Back to the top



Warnings• Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

• This workaround does not apply to SQL Server failover cluster instances when you are performing a new installation or a maintenance installation.

You can use one of the following methods to work around this problem.

Back to the top


Modify the registry to grant read permissions to specific keys

For each instance of SQL Server 2000 that you installed after you installed SQL Server 2005, follow these steps: 1. Click Start, click Run, type regedit, and then click OK.

2. Locate the following registry subkey:


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\InstanceName

In this subkey, InstanceName is the name of the instance of SQL Server 2000.


Note If you installed SQL Server 2000 as the default instance, the registry subkey is the following:


3. On the Edit menu, click Permissions.

4. Click Add, type SQLServer2005SQLBrowserUser or type SQLServer2005SQLBrowserUser$ComputerName, and then click OK.


Note The account group name SQLServer2005SQLBrowserUser may be SQLServer2005SQLBrowserUser$ComputerName on your computer. You can find this group name in Local Users and Groups in Computer Management. In this step, ComputerName in SQLServer2005SQLBrowserUser$ComputerName is the name of your computer. 

5. Click to select the Read check box in the permission list for this user account, and then click OK.

6. Quit Registry Editor, and then restart the SQL Server Browser service.

Note The permissions should be inherited by the child keys. If the permissions are not inherited, you have to explicitly grant the read permission to SQLServer2005SQLBrowserUser or to SQLServer2005SQLBrowserUser$ComputerName for the following keys, if they are present:• HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\CurrentVersion

• HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\SuperSocketNetLib

• HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\Cluster

Note In this subkey, InstanceName is the name of the instance of SQL Server 2000.


If the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\SuperSocketNetLib registry subkey is not inherited, you must manually modify the underlying keys for this registry subkey.


Note SQL Server 7.0 did not have named instances. Therefore, the relevant registry key should have inherited the appropriate permission from the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer registry subkey. However, if the permission has not been inherited, you must manually set the permission.

Back to the top


Explicitly specify the connection information in the connection string

When you connect to an instance of SQL Server 2000 or of SQL Server 7.0 from the client, you can explicitly specify the connection information in the connection string. You specify this information so that the connection information is not dependent on the information being returned by the server. For example, you can connect to the instance by using the command that similar to the following command when you use the Sqlcmd utility. sqlcmd –S tcp:yourhost,1500

Back to the top



Monday, January 21, 2008 11:04:00 AM (Central Standard Time, UTC-06:00) |  |  DTS#
Sunday, January 13, 2008

My latest "finds" are now working.

I couldn't help my self recently, noticed two items in the trash of a house that was recently vacated by the occupants; snow blower and lawn mower.


Both looked good, Toro Snow blower, litle 3hb job, nice; Troy Built 6.5 hp self-propelled mower, a beauty both side and rear discharge, why would it be in the trash ? ; even if didn't work, i can always use parts.


Snow Blower, no-start, 10 minutes of tearing apart, cleaned carb and spark plug, shot of starter fluid in the carb, starts right up, very nice.  Electric starter is broken, but properly cleaned plug and carb, fires right up with the old fashioned pull rope.  These 2-stroke engines foul easy with lack of maintenance, oil-gas mixture goes bad quickly, snow blowers are rarely used (even in the midwest, most only see use 4-5 times a year), people rarely drain the gas out in the spring and few bother to start them occasionally.  I always like to have fun and tinker; once a month I start everything I have, generators, snow blowers, mowers, tractors, weed wackers, chain saws and leaf blowers...that's fun ! 


Troy built mower, looks brand new, but diagnosis shows lack of basic care.  Carb fouled, spark plug fouled, electric cut-off safety device broken and underneath the mowing deck a side peice of sheet-metal tore off and impacted the blade (what the hell were they mowing, the african bush ?).  Hoping the engine isn't shot from the impact; so I clean 'er up enough to start, bend the metal underneath out of the way, rig-up the safety so it's ignored !, 6 pulls later she runs like champ, what a great mower.  Cut-out the metal under the mowing deck, fix the safety, this mower is better than the one I got, what a find !


Of course the "boys" helped the entire time, they love fix'n stuff too !


"People know the cost of everything and the value of Nothing", Unknown quote I heard from somewhere;  Nowhere is this more true than here, I can sell either of these peices of equipment for a few hundred bucks; absolutely nothing wrong with them except lack of care.


Another man's trash is another man's treasure.

Sunday, January 13, 2008 6:35:01 PM (Central Standard Time, UTC-06:00) |  | Web_Blog#
Friday, January 11, 2008

Error: 2008-01-10 21:03:38.38
   Code: 0xC002F210
   Source: Create DB_Stats Worksheet Execute SQL Task
   Description: Executing the query "CREATE TABLE `DB Stats` (`StatDate` DateTime, `DayTotal` Long, `DBA` Long, `master` Long, `msdb` Long, `EAM` Long, `ASPState` Long, `EAM_Load` Long, `tempdb` Long)" failed with the following error: "Too many fields defined.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
End Error
Warning: 2008-01-10 21:03:38.49
   Code: 0x80019002
   Source: Create DB_Stats Tab
   Description: SSIS Warning Code DTS_W_MAXIMUMERRORCOUNTREACHED.  The Execution method succeeded, but the number of errors raised (1) reached the maximum allowed (1); resulting in failure. This occurs when the number of errors reaches the number specified in MaximumErrorCount. Change the MaximumErrorCount or fix the errors.
End Warning

Anyone ?


Friday, January 11, 2008 9:41:55 AM (Central Standard Time, UTC-06:00) |  |  SSIS#
Thursday, January 03, 2008

Chasing 4 problems.

  1. Polyserve failing / restarting SQL Instances due to no network traffic.
  2. Incorrect durations reporting in SQL Server traces (very large numbers).
  3. Information message logged in SQL Server 2005 log file, The time stamp counter of CPU on scheduler id 2 is not synchronized with other CPUs.
  4. Alert from Monitoring on, Windows cannot obtain the domain controller name for your computer network. (An unexpected network error occurred.). Group Policy processing aborted.
  5. I've been chasing these errors, without much support from network or other engineers, basically the same as the mechanic who tells you the engine light is on, but all is ok !

Well finally found a customer advisory from HP and all 4 problems roll up to the same issue:



Document ID: c01075682

Version: 2
Advisory: (Revision) HP ProLiant Servers Using Dual-Core or More Than One Single-Core AMD Opteron Processor May Experience Incorrect Operating System Time When Running Systems That Use the System Time Stamp Counter
NOTICE: The information in this document, including products and software versions, is current as of the Release Date. This document is subject to change without notice.

Release Date: 2007-07-16

Last Updated: 2007-07-16

DESCRIPTIONDocument Version Release Date Details
2 07/16/2007 Added Sun Solaris information.
1 06/08/2007 Original Document Release.

HP ProLiant servers configured with Dual-Core or with more than one single-core AMD Opteron processor may encounter Time Stamp Counter (TSC) drift in certain conditions. The TSC is used by some operating systems as a timekeeping source. Each processor core, whether it is a single-core processor or a dual-core processor, includes a TSC. The condition where the TSC for different processor cores becomes unsynchronized is known as TSC drift.

Note : The potential for TSC drift if the proper recommendations are not applied when using AMD Opteron 200-series, Opteron 800-series, Opteron 1200-series, Opteron 2200-series and Opteron 8200-series processors is not specific to HP ProLiant servers.

Whether or not the system is affected by TSC drift depends on the specific ProLiant server generation, the number and type of AMD Opteron processors installed, the operating system, and whether the AMD PowerNow! feature is being utilized. TSC drift can result in different symptoms and behaviors based on the operating system environment, as detailed below:

Microsoft Windows Server 2003
This condition affects operations such as network communications and performance monitoring tasks that are sensitive to system time. For example, Microsoft Active Directory domain controllers can report an Unexpected Network Error (Event ID 1054) with the following description:

Event Description:
Windows cannot obtain the domain controller name for your computer network. (An unexpected network error occurred.). Group Policy processing aborted.

In addition, a negative PING time or larger than actual PING time may be returned after issuing the PING command. The negative PING time occurs because of a Time Stamp Counter drift occurring on AMD Opteron platforms which include more than one processor core.

Red Hat Enterprise Linux, SUSE Linux Enterprise Server and Sun Solaris
Earlier releases of Red Hat Enterprise Linux 4, SUSE Linux Enterprise Server 9 and Sun Solaris 10 will default to using the Time Stamp Counter as the default time source for gettimeofday() calls. When the time stamp counter is used, the server may exhibit some inconsistent timekeeping and the following symptoms may be observed:

When a command such as "date" is typed, an incorrect system time may be displayed.
The kernel may report an error similar to the following:
kernel: Your time source seems to be instable or some driver is hogging interrupts

Newer operating systems typically do not use the TSC by default if other timers are available in the system which can be used as a timekeeping source. Other available timers include the PM_Timer and the High Precision Event Timer (HPET). All HP ProLiant servers include the PM_Timer, and the latest generation of HP ProLiant servers supporting AMD Opteron 2200-series and 8200-series processors support HPET. These timers are not affected by this condition. New operating systems such as Red Hat Enterprise Linux (RHEL) 5, SUSE Linux Enterprise Server (SLES) 10, and Microsoft Windows Server 2008 (codename Longhorn) are not affected by this issue.

Note: Some applications (e.g., Microsoft SQL Server 2005) use the Time Stamp Counter even though the operating system is configured to use a different timer as the timekeeping source. To determine if a specific application uses the TSC as the timekeeping source, contact the software vendor.


Any HP ProLiant server configured with more than one single-core AMD Opteron processor or configured with one (or more) dual-core AMD Opteron processors running the following operating systems:

Microsoft Windows Server 2003 (any edition)
Microsoft Windows Server 2003 x64 Edition (any edition)
Red Hat Enterprise Linux 4(x86) or earlier
Red Hat Enterprise Linux 4 (AMD64/EM64T) or earlier
SUSE Linux Enterprise Server 9 32-bit (x86) or earlier
SUSE Linux Enterprise Server 9 64-bit (AMD64/EM64T) or earlier
Sun Solaris 9
Sun Solaris 10 3/05 (32/64 bit)
VMware ESX Server 2.5.4 (or earlier)

Note: VMware ESX Server 2.5.4 with the January 2007 (or later) patch is not affected. VMware ESX Server 3.0.0 (or later) uses an alternate mechanism for timekeeping and is not affected by the potential TSC drift.

Note : The issue does not affect systems with only one single-core processor installed.

The following servers are affected when running an affected operating system:

HP ProLiant BL465c Blade Server
HP ProLiant BL685c Blade Server
HP ProLiant BL25p G2 server
HP ProLiant BL45p G2 server
HP ProLiant DL145 G3 server
HP ProLiant DL385 G2 server
HP ProLiant DL585 G2 server
HP ProLiant DL365 server
HP ProLiant ML115 server

The following servers are affected ONLY when using the AMD PowerNow! feature and running an affected operating system:

ProLiant BL25p Blade Server
HP ProLiant BL45p Blade Server
HP ProLiant DL145 G2 server
HP ProLiant DL385 server
HP ProLiant DL585 server

The following operating systems are not affected by TSC drift because these operating systems do not use the TSC as a timekeeping source:

Microsoft Windows Server 2008 (codename Longhorn)
Red Hat Enterprise Linux 5 (x86)
Red Hat Enterprise Linux 5 (AMD64/EM64T)
SUSE Linux Enterprise Server 10 (x86)
SUSE Linux Enterprise Server 10 (AMD64/EM64T)
VMware ESX Server 3.0.0 (or later)


To ensure proper operation of tasks sensitive to system time, perform either of the following actions, based on the operating system environment:

Microsoft Windows Server 2003 (any edition)
Edit the BOOT.ini file and add the parameter "/usepmtimer," then reboot the server. Adding the "/usepmtimer" parameter to the BOOT.INI file configures the Windows operating system to use the PM_TIMER, rather than the Time Stamp Counter.

Note: When installing the AMD Opteron Processor with AMD PowerNow! Technology driver Version (or later) from AMD, the BOOT.INI file will automatically be updated with the "/usepmtimer" parameter. While the driver itself does not resolve this issue, the installation process will make the necessary changes to the BOOT.INI file to prevent the issue from occurring.

Red Hat Enterprise Linux 4 or SUSE Linux
Add the boot parameter "clock=pmtmr" to the /boot/grub/menu.lst file. Adding the "clock=pmtmr" to the /boot/grub/menu.lst file configures the operating system to use the PM_TIMER, rather than the Time Stamp Counter.

Sun Solaris
If using Sun Solaris 10 3/05 apply the 1/06 (Update 1) Patch (or later). To locate the latest version of the Solaris 10 patch, click on the following Sun Microsystems URL, and click on the desired patch:


If using VMware ESX Server 2.5.4, update to the January 2007 Patch (or later). To locate the latest version of the ESX Server 2.5.4 patch, click on the following VMware URL, and click on the desired patch.

http://www.vmware.com/download/esx/esx2_patches.html#c4317 RECEIVE PROACTIVE UPDATES : Receive support alerts (such as Customer Advisories), as well as updates on drivers, software, firmware, and customer replaceable components, proactively via e-mail through HP Subscriber's Choice. Sign up for Subscriber's Choice at the following URL:

SEARCH TIP : For hints on locating similar documents on HP.com, refer to the Search Tips document: http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=c00638154 .
To search for additional advisories related to System Time, use the following search string:
+ProLiant +Advisory +System Time
KEYWORDS: time sync, clock, track time





Thursday, January 03, 2008 2:55:22 PM (Central Standard Time, UTC-06:00) |  | Polyserve | SQL Server#

Using Polyserve clustering technology from HP, you need to ensure to have Automount off.

This is done using diskpart from a command prompt.


Automount disable

If this is not disabled you end up with "phantom" drives, and it can cause problems with everything from virus scanning, back up software and windows itself !  Basically what happens is the SAN Administrator zones new storage, somewhere the server reboots (got to love that!), than you have a new drive letter, but basically it is a "phantom" and netbackup, virus scanning or some other program attempts to access the new volume through it's drive letter, and the software abends....nice !

Removing the drive letter is usually a straight forward process of using Disk Management or Veritas Enterprise Disk Manager and removing the drive letter, but I've had issues with this and had to drop do a command prompt and use DiskMount to remove it.

Thursday, January 03, 2008 12:35:20 PM (Central Standard Time, UTC-06:00) |  | Polyserve#
Wednesday, January 02, 2008

Nothing more annoying than something that should, but doesn't work.

Often we allow users to view jobs (not necessarily administer), but just the ability to go view them etc.

Generally this was granted through the TargetServerRole in the msdb database.  Works fine in sql server 2000 enterprise manager, but with SQL Server Management Studio connecting to a sql server 2000 Instance, it does not work.

Best we can tell this is related to a "Phantom" 208 error.  A 208 error is generated when one compiles a stored procedure which declares and uses a temporary table.


Though if you run a trace profile everything completes fine, but some how ssms "sees" the 208 error and "throws" an error.

Unfortunately many users are not adept enough to run the commands through TSQL, they need a GUI.

So far the only solution was to install sql server 2000 client tools, which we were hoping to only have to install sql server 2005 client tools.



Wednesday, January 02, 2008 2:13:51 PM (Central Standard Time, UTC-06:00) |  |  SSMS#
Popular Posts
Unpatched Vulnerabiltiy discovered ...
Spring Fornicator brewed...
SQL Agent will not start when a use...
SQL Instance will not fail back to ...
Hash Join vs. Merge Join
Recent Posts
May, 2019 (1)
April, 2019 (1)
March, 2019 (1)
February, 2019 (1)
January, 2019 (1)
December, 2018 (1)
November, 2018 (3)
October, 2018 (1)
June, 2018 (1)
May, 2018 (3)
April, 2018 (2)
February, 2018 (3)
January, 2018 (3)
November, 2017 (1)
October, 2017 (1)
August, 2017 (1)
June, 2017 (2)
May, 2017 (2)
April, 2017 (2)
March, 2017 (1)
February, 2017 (1)
December, 2016 (2)
October, 2016 (2)
September, 2016 (1)
August, 2016 (1)
July, 2016 (1)
March, 2016 (2)
February, 2016 (3)
December, 2015 (4)
November, 2015 (6)
September, 2015 (1)
August, 2015 (2)
July, 2015 (1)
March, 2015 (2)
January, 2015 (1)
December, 2014 (3)
November, 2014 (1)
July, 2014 (2)
June, 2014 (2)
May, 2014 (3)
April, 2014 (3)
March, 2014 (1)
December, 2013 (1)
October, 2013 (1)
August, 2013 (1)
July, 2013 (1)
June, 2013 (2)
May, 2013 (1)
March, 2013 (3)
February, 2013 (3)
January, 2013 (1)
December, 2012 (3)
November, 2012 (1)
October, 2012 (1)
September, 2012 (1)
August, 2012 (1)
July, 2012 (4)
June, 2012 (3)
April, 2012 (1)
March, 2012 (3)
February, 2012 (3)
January, 2012 (4)
December, 2011 (3)
October, 2011 (2)
September, 2011 (2)
August, 2011 (8)
July, 2011 (4)
June, 2011 (3)
May, 2011 (3)
April, 2011 (1)
March, 2011 (2)
February, 2011 (3)
January, 2011 (1)
September, 2010 (1)
August, 2010 (2)
May, 2010 (2)
April, 2010 (3)
March, 2010 (1)
February, 2010 (4)
January, 2010 (1)
December, 2009 (3)
November, 2009 (2)
October, 2009 (2)
September, 2009 (5)
August, 2009 (4)
July, 2009 (8)
June, 2009 (2)
May, 2009 (3)
April, 2009 (9)
March, 2009 (6)
February, 2009 (3)
January, 2009 (8)
December, 2008 (8)
November, 2008 (4)
October, 2008 (14)
September, 2008 (10)
August, 2008 (7)
July, 2008 (7)
June, 2008 (11)
May, 2008 (14)
April, 2008 (12)
March, 2008 (17)
February, 2008 (10)
January, 2008 (13)
December, 2007 (7)
November, 2007 (8)
Admin Login
Sign In