FIX: Complex Query May Not Create an Execution Plan

Article translations Article translations
Article ID: 817262 - View products that this article applies to.
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 469054 (SHILOH_BUGS)
Expand all | Collapse all

On This Page

SYMPTOMS

A complex query may not create an execution plan if the following conditions are true:
  • The FROM clause of the query is made up of a subquery.
  • The subquery contains a UNION ALL clause.
  • The WHERE clause of the subquery contains many values in an IN clause (several hundred or thousands of values, for example).
When this problem occurs, the query may continue to allocate memory until Microsoft SQL Server consumes most of the physical memory of the server computer, even if the max server memorysp_configure option has been set to a lower value. The query eventually fails, and you receive the following error message:
Server: Msg 701, Level 17, State 1, Line 3
There is insufficient system memory to run this query.

RESOLUTION

Service pack information

To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For additional 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
   --------------------------------------------------------------
   25-Feb-2003  17:41  2000.80.777.0      29,244  Dbmslpcn.dll     
   07-Feb-2003  19:44                    786,432  Distmdl.ldf
   07-Feb-2003  19:44                  2,359,296  Distmdl.mdf
   29-Jan-2003  15:55                        180  Drop_repl_hotfix.sql
   31-Jan-2003  14:32  2000.80.763.0   1,557,052  Dtsui.dll        
   29-Jan-2003  19:18                    746,470  Instdist.sql
   29-Jan-2003  15:55                      1,402  Inst_repl_hotfix.sql
   07-Feb-2003  20:40  2000.80.765.0      90,692  Msgprox.dll      
   07-Feb-2003  17:53                  1,065,895  Replmerg.sql
   07-Feb-2003  20:40  2000.80.765.0     221,768  Replprov.dll     
   07-Feb-2003  20:40  2000.80.765.0     307,784  Replrec.dll      
   06-Mar-2003  19:02                  1,084,369  Replsys.sql
   03-Mar-2003  07:18                    104,958  Sp3_serv_uni.sql
   19-Mar-2003  08:20  2000.80.789.0      28,672  Sqlevn70.rll
   27-Feb-2003  15:34  2000.80.778.0     176,696  Sqlmap70.dll     
   07-Feb-2003  20:40  2000.80.765.0      57,920  Sqlrepss.dll     
   19-Mar-2003  08:24  2000.80.789.0   7,540,820  Sqlservr.exe     
   07-Feb-2003  20:40  2000.80.765.0      45,644  Sqlvdi.dll       
   25-Feb-2003  17:41  2000.80.777.0      29,244  Ssmslpcn.dll     
   25-Feb-2003  17:41  2000.80.777.0      82,492  Ssnetlib.dll     
   17-Mar-2003  04:49                    727,132  Sysmessages.sym
   27-Feb-2003  15:34  2000.80.778.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.


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

The following is an example of a query that may not create an execution plan:
select t.ACCOUNT, t.DATASRC, t.ENTITY, t.INTCO, t.SUBTABLES
from (

select ACCOUNT, DATASRC, ENTITY, INTCO, SUBTABLES, SIGNEDDATA
from tblFactFINANCIALS
where ACCOUNT in ('IN21300','IB10702_GW', ... <long value list>) 
	AND CATEGORY in ('ACTUAL') 
	AND CURRENCYPARENT in ('C_GR_FIN') 
	AND DATASRC in ('ELIS') 
	AND ENTITY in ('BC_GR_9TEL','PTERZI_VIASAT', ... <long value list>) 
	AND SUBTABLES in ('F_APE','F_VGP', ... <long value list>) 
	AND TIMEID in ('20020400')
union all
select ACCOUNT, DATASRC, ENTITY, INTCO, SUBTABLES, SIGNEDDATA
from tblFactWBFINANCIALS
where ACCOUNT in ('IN21300','IB10702_GW', ... <long value list>) 
	AND CATEGORY in ('ACTUAL') 
	AND CURRENCYPARENT in ('C_GR_FIN') 
	AND DATASRC in ('ELIS') 
	AND ENTITY in ('BC_GR_9TEL','PTERZI_VIASAT', ... <long value list>) 
	AND SUBTABLES in ('F_APE','F_CALC','F_VGP', ... <long value list>) 
	AND TIMEID in ('20020400')

) as t

Properties

Article ID: 817262 - Last Review: February 27, 2014 - Revision: 9.3
APPLIES TO
  • 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
Keywords: 
kbnosurvey kbarchive kbhotfixserver kbqfe kbqfe kbsqlserv2000presp4fix kbfix kbbug KB817262

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com