Solved

Error "Insufficient system memory" in SQL 2008

Posted on 2010-08-23
14
360 Views
Last Modified: 2012-05-10
Getting the following error when opening a large view in SQL 2008.  Worked fine in 2000.  "There is insufficient system memory in resource pool 'internal' to run this query.".  Any ideas what would cause this and how to resolve?

Thanks!
0
Comment
Question by:greymattersolutions
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 7
  • 5
  • 2
14 Comments
 
LVL 12

Expert Comment

by:mcv22
ID: 33503597
Are you at the latest SP level for SQL server 2008?
0
 

Author Comment

by:greymattersolutions
ID: 33503879
Probably not.  Is this a likely fix?  We'll apply latest sp.
0
 

Author Comment

by:greymattersolutions
ID: 33507184
Applied the latest sp and still the same error.  Can open the view with TOP 50 but get the error above 100.
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 12

Expert Comment

by:mcv22
ID: 33507200
0
 
LVL 75

Accepted Solution

by:
Anthony Perkins earned 250 total points
ID: 33507427
>>Any ideas what would cause this and how to resolve?<<
I am going to go out on a limb and suggest your system does not have enough memory.
0
 

Author Comment

by:greymattersolutions
ID: 33507453
Enough memory for what? To show 100 rows of a view?  Sql has 3.8 gb allocated.  It worked fine in sql 2000.  Is this a real suggestion or are you a hardware salesman :-)
0
 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 33507486
>>Sql has 3.8 gb allocated.<<
And what else is running on the server?  Is this 32-bit or 64-bit?  If it is 32-bit then there are some additional settings you may need to use in order to enable more memory.  
How are you executing the query?  I trust you are not going to say from Design mode.
Can you post the exact query you are using?
If you are running this on the server, have you tried disabling intellisense, so that you do not use so much memory?

>>It worked fine in sql 2000.<<
And I am sure it "worked fine" in SQL Server 7 and SQL Server 6.5 and .. .  What is your point?  Surely you are not considering going back to a discontinued and unsupported version?

>>Is this a real suggestion <<
Not at all.  I thought perhaps you were missing the obvious.
0
 

Author Comment

by:greymattersolutions
ID: 33507499
Wouldn't be the first time, but I don't think that's it in this case.  
Thanks!
0
 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 33507502
Fair enough.

Good luck.
0
 

Author Comment

by:greymattersolutions
ID: 33507741
Found an inefficient cross join in a sub view.  Seems to have caused the problem.  Caused the view to return 400,000 rows.  Still not sure why it worked in SQL 2000 and not in 2008.  Are there major differences in how these versions handle memory?  Thanks!
0
 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 33507769
>>Are there major differences in how these versions handle memory?<<
Yes.  Even SQL Server 2005 was dramatically different.
0
 

Author Comment

by:greymattersolutions
ID: 33507810
Been writing commercial enterprise systems on sql server since the early 90s.  Its never boring.

Thanks for making me go back through the code.  Still seems an odd regression in execution behavior. Have a good night!
0
 

Author Closing Comment

by:greymattersolutions
ID: 33507818
Tough love
0
 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 33510230
>>Been writing commercial enterprise systems on sql server since the early 90s.<<
Than you are merely a spring chicken. :)

>>Still seems an odd regression in execution behavior. <<
Each new version of SQL Server brings with it added functionality and complexity, we cannot and should not expect something to work the same way now as it may have done with a version 10 years ago.  I will go one step further and state that there are not only queries that produce different output with SQL Server 2005/2008, but also some that do not even compile.  In all cases that I have seen that is due to a lousy query that should have been re-written in any case.
0

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this article we will get to know that how can we recover deleted data if it happens accidently. We really can recover deleted rows if we know the time when data is deleted by using the transaction log.
The Delta outage: 650 cancelled flights, more than 1200 delayed flights, thousands of frustrated customers, tens of millions of dollars in damages – plus untold reputational damage to one of the world’s most trusted airlines. All due to a catastroph…
Familiarize people with the process of utilizing SQL Server functions from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Ac…
Viewers will learn how to use the UPDATE and DELETE statements to change or remove existing data from their tables. Make a table: Update a specific column given a specific row using the UPDATE statement: Remove a set of values using the DELETE s…

729 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question