FIX: You may notice incorrect values for the "Active Transactions" counter when you perform multiple transactions on an instance of SQL Server 2000 that is running on an SMP computer

This article has been archived. It is offered "as is" and will no longer be updated.
Bug #: 362810 (SQL Server 8.0)

Microsoft distributes SQL Server 2000 fixes as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2000 fix release.
SYMPTOMS
On a symmetric multiprocessor (SMP) computer that is running Microsoft SQL Server 2000, you may notice the following behavior in the Windows Performance Monitor when you perform multiple transactions on an instance of SQL Server 2000:
  • The values for the Active Transactions counter for the _Total instance of the SQL Server:Databases object are not correct. You may also notice that the values are very large and unrealistic.
  • The values for the Active Transactions counter for the instances that correspond to individual databases are correct.
RESOLUTION

Service pack information

To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
290211 How to obtain the latest SQL Server 2000 service pack

Hotfix 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 tool in Control Panel.
   Date         Time   Version            Size    File name   -------------------------------------------------------------------------   23-Apr-2004  03:22  2000.80.935.0     664,128  Autoplt.dll         23-Apr-2004  03:22  2000.80.935.0      78,400  Console.exe         23-Apr-2004  03:22  2000.80.935.0     315,968  Custtask.dll        23-Apr-2004  03:22  2000.80.935.0      33,340  Dbmslpcn.dll        08-Apr-2004  09:12                    786,432  Distmdl.ldf   08-Apr-2004  09:12                  2,359,296  Distmdl.mdf   10-Oct-2003  06:18                        180  Drop_repl_hotfix.sql   23-Apr-2004  03:22  2000.80.935.0   1,905,216  Dtspkg.dll          23-Apr-2004  03:22  2000.80.935.0     528,960  Dtspump.dll         23-Apr-2004  03:22  2000.80.935.0   1,557,052  Dtsui.dll           23-Apr-2004  03:22  2000.80.935.0     639,552  Dtswiz.dll          10-Oct-2003  06:18                    747,927  Instdist.sql   10-Oct-2003  06:18                      1,581  Inst_repl_hotfix.sql   23-Apr-2004  03:22  2000.80.935.0      82,492  Itwiz.exe           23-Apr-2004  03:22  2000.80.935.0      90,692  Msgprox.dll         23-Apr-2004  03:22  2000.80.935.0      62,024  Odsole70.dll        23-Apr-2004  03:23  2000.80.935.0      25,144  Opends60.dll        23-Apr-2004  03:22  2000.80.935.0      57,904  Osql.exe            23-Apr-2004  03:22  2000.80.935.0     279,104  Pfutil80.dll        10-Oct-2003  06:07                    550,780  Procsyst.sql   08-Apr-2004  09:12                     12,305  Qfe469315.sql   08-Apr-2004  09:12                     19,195  Qfe469571.sql   22-Apr-2004  09:51                  1,104,848  Replmerg.sql   23-Apr-2004  03:22  2000.80.935.0     221,768  Replprov.dll        23-Apr-2004  03:22  2000.80.935.0     307,784  Replrec.dll         22-Apr-2004  10:00  2000.80.935.0     159,813  Replres.rll   10-Oct-2003  06:18                  1,087,150  Replsys.sql   10-Oct-2003  06:18                    986,603  Repltran.sql   23-Apr-2004  03:22  2000.80.935.0     287,304  Rinitcom.dll        23-Apr-2004  03:22  2000.80.935.0      66,112  Semmap.dll          23-Apr-2004  03:22  2000.80.935.0      57,916  Semnt.dll           23-Apr-2004  03:22  2000.80.935.0     492,096  Semobj.dll          22-Apr-2004  10:39  2000.80.935.0     172,032  Semobj.rll   23-Apr-2004  03:22  2000.80.935.0      53,832  Snapshot.exe        11-Mar-2004  14:40                    117,834  Sp3_serv_uni.sql   23-Apr-2004  03:21  2000.80.935.0      28,672  Sqlagent.dll        23-Apr-2004  03:22  2000.80.935.0     311,872  Sqlagent.exe        23-Apr-2004  03:21  2000.80.935.0     168,001  Sqlakw32.dll        23-Apr-2004  03:22  2000.80.935.0      33,344  Sqlctr80.dll        23-Apr-2004  03:22  2000.80.935.0   4,215,360  Sqldmo.dll          23-Apr-2004  03:22                     25,172  Sqldumper.exe       22-Apr-2004  09:47  2000.80.935.0      28,672  Sqlevn70.rll   23-Apr-2004  03:22  2000.80.935.0     180,792  Sqlmap70.dll        23-Apr-2004  03:22  2000.80.935.0     188,992  Sqlmmc.dll          22-Apr-2004  10:43  2000.80.935.0     479,232  Sqlmmc.rll   23-Apr-2004  03:22  2000.80.935.0     401,984  Sqlqry.dll          23-Apr-2004  03:22  2000.80.935.0      57,920  Sqlrepss.dll        23-Apr-2004  03:23  2000.80.935.0   7,577,681  Sqlservr.exe        23-Apr-2004  03:22  2000.80.935.0     590,396  Sqlsort.dll         23-Apr-2004  03:22  2000.80.935.0      45,644  Sqlvdi.dll          23-Apr-2004  03:22  2000.80.935.0     106,588  Sqsrvres.dll        23-Apr-2004  03:22  2000.80.935.0      33,340  Ssmslpcn.dll        23-Apr-2004  03:22  2000.80.935.0      82,492  Ssnetlib.dll        23-Apr-2004  03:23  2000.80.935.0      25,148  Ssnmpn70.dll        23-Apr-2004  03:23  2000.80.935.0     123,456  Stardds.dll         23-Apr-2004  03:23  2000.80.935.0     158,240  Svrnetcn.dll        23-Apr-2004  03:22  2000.80.935.0      76,416  Svrnetcn.exe        23-Apr-2004  03:23  2000.80.935.0      49,228  Ums.dll             23-Apr-2004  03:23  2000.80.935.0      98,872  Xpweb70.dll      
Note Because of file dependencies, the most recent hotfix or feature that contains these files may also contain additional files.

WORKAROUND
If the counters that are mentioned in the "Symptoms" section are used by custom applications, you can use the following work around to resolve the problem:
  • Calculate the sum of the values for the Active Transactions counter for the instances that correspond to individual databases. This sum is the actual value of the Active Transactions counter for the _Total instance.
STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Microsoft SQL Server 2000 Service Pack 4.
MORE INFORMATION

Steps to reproduce the behavior

To reproduce the behavior, follow these steps on an SMP computer that is running SQL Server:
  1. In SQL Query Analyzer, connect to an instance of SQL Server to open a query window, and then paste the following code in the query window:
    -- Transaction for the first connectionwhile (1=1)beginbegin tranupdate pubs..authors set au_id=au_idrollbackend
  2. In SQL Query Analyzer, connect to the instance of SQL Server that is mentioned in step 1, and then paste the following code in the query window:
    -- Transaction for the second connectionwhile (1=1)beginbegin tranupdate Northwind..Categories set Description=Descriptionrollbackend
  3. In SQL Query Analyzer, connect to the instance of SQL Server that is mentioned in step 1, and then paste the following code in the query window:
    -- Transaction for the third connectionwhile (1=1)beginbegin tranupdate pubs..authors set au_id=au_idupdate Northwind..Categories set Description=Descriptionrollbackend
  4. Run the code that is mentioned in step 1, in step 2, and in step 3.
  5. Add the required counters in the Windows Performance Monitor to view the values. To do this, follow these steps:
    1. Click Start, and then click Run.
    2. In the Open box, type perfmon, and then click OK.
    3. Right-click in the right pane of the Performance window, and then click Add Counters.
    4. In the Add Counters dialog box, select SQL Server:Databases from the Performance object list.
    5. Select the Active Transactions counter from the list of counters.
    6. Select the _Total, the Northwind, and the Pubs instances from the list of instances, and then click Add.
    7. In the Add Counters dialog box, click Close.
In the right pane of the Performance window, you may notice incorrect values in the Average box and in the Maximum box. You may also notice that the values are much larger than the sum of the Active Transactions counters for the individual database instances.
REFERENCES
For more information about software updates, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates


For more information about SQLServer:Databases performance counters, click the following article number to view the article in the Microsoft Knowledge Base:
330088 BUG: SQLServer:Databases performance counters limited to first 99 databases in Windows System Monitor
perfmon SMP Windows System Monitor
Properties

Article ID: 841401 - Last Review: 01/17/2015 10:07:24 - Revision: 3.3

  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000, Workgroup Edition
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
  • kbnosurvey kbarchive kbperformancetool kbperfmon kbperformance kbsqlserv2000presp4fix kbfix kbbug kbhotfixserver kbqfe KB841401
Feedback