Microsoft KB Archive/813492

= FIX: Create Index Fails on SQL Server 7.0 When Trace Flag 1118 is Enabled =

Article ID: 813492

Article Last Modified on 9/27/2005

-

APPLIES TO


 * Microsoft SQL Server 7.0 Standard Edition

-



BUG #: 103062 (SQLBUG_70)



SYMPTOMS
Creating an index on a permanent table fails, and you receive the following assertion on SQL Server 7.0, when

SQL Server trace flag 1118 is enabled:

2003-01-20 14:05:45.23 kernel SQL Server Assertion: File: <&quot;sortext.c&quot;>, line=867

Failed Assertion = 'allocReqType != FirstPageAllocation || sortdesP->soMixedPage'.

2003-01-20 14:05:45.24 spid7 Error: 3624, Severity: 20, State: 1.

You might also experience this problem while creating a primary key constraint, or when you run the

DBCC DBREINDEX command against a permanent table. You will not experience this problem with temporary tables.



RESOLUTION
A supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem.

To resolve this problem, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site:

http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

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.

The English version of this fix has the file attributes (or later) 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 ---

04-Oct-2002 23:59  7.0.34.4.0        28,944 bytes  Dbmssocn.dll 06-Sep-2002 23:55  7.0.33.6.0        53,520 bytes  Distrib.exe 06-Sep-2002 23:55  7.0.33.6.0        98,576 bytes  Logread.exe 15-Jan-2003 23:30                     99,336 bytes  Opends60.dbg 15-Jan-2003 23:31  7.0.37.13.0      160,016 bytes  Opends60.dll 06-Sep-2002 23:56  7.0.33.6.0       250,128 bytes  Rdistcom.dll 06-Sep-2002 23:55  7.0.33.6.0        82,192 bytes  Replmerg.exe 06-Sep-2002 23:56  7.0.33.6.0        78,096 bytes  Replres.dll 17-Sep-2002 22:52                      7,941 bytes  Securityhotfix.sql 15-Jan-2003 23:31  7.0.37.13.0      413,696 bytes  Semsys.dll 15-Jan-2003 20:14  7.0.37.13.0      114,688 bytes  Semsys.rll 06-Sep-2002 23:56  7.0.33.6.0       160,016 bytes  Snapshot.exe 08-Feb-2003 00:49                     63,834 bytes  Sp4_serv_uni.sql 15-Jan-2003 01:33  7.0.37.13.0      344,064 bytes  Sqlagent.exe 06-Sep-2002 23:55  7.0.33.6.0        45,056 bytes  Sqlcmdss.dll 16-Feb-2003 00:52  7.0.38.14.0    5,062,928 bytes  Sqlservr.exe 04-Oct-2002 23:59  7.0.34.4.0        45,328 bytes  Ssmsso70.dll 17-Dec-2002 01:36  7.0.36.16.0       24,848 bytes  Ssnmpn70.dll 26-Sep-2002 20:30                     28,408 bytes  Ums.dbg 26-Sep-2002 20:27  7.0.33.25.0       57,616 bytes  Ums.dll 17-Sep-2002 23:00  7.0.33.6.0       151,552 bytes  Xpweb70.dll Note: Because of file dependencies, the most recent hotfix or feature that contains the files

may also contain additional files.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.



MORE INFORMATION
This fix introduces a change in functionality for SQL Server trace flag 1118 on SQL Server 7.0 only. When you

turn on trace flag 1118, all allocations for tables in the tempdb database will allocate full extents to the table. However,

allocations for small tables (less than 8 pages) in other databases will continue to allocate single pages

from &quot;mixed&quot; extents exactly as they would if the trace flag were not turned on. The behavior of

SQL Server trace flag 1118 on SQL Server 2000 remains unchanged. If SQL Server trace flag 1118

is enabled on SQL Server 2000, mixed extent allocations are disabled in all databases.

SQL Server trace flag 1118 is used to reduce allocation contention in tempdb.

