"Not enough memory was available for trace" error when attempting to profile sql 2008 - by Eric Gravert

Status : 

  Not Reproducible<br /><br />
		The product team could not reproduce this item with the description and steps provided.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 342691 Comments
Status Closed Workarounds
Type Bug Repros 2
Opened 5/8/2008 6:56:42 AM
Access Restriction Public


After installing Sql 2008, I attempted to run Sql Server Profiler and run a profile against the server.  After creating a new trace and selecting rpc:completed and sql:batchcompleted, I hit run and after waiting a minute (before the trace starts). A dialog popped up with the message "Not enough memory was available for trace".  Repeated attempts resulted in the same error.  I tried the same trace against a sql 2005 server (without restarting profiler) and had no issues.  Restarting the sql 2008 db service corrected the issue.

I can reproduce this error regularly.  I checked the server logs but did not see any information about the exception.  Is there someplace else I can find more details about the error?
Sign in to post a comment.
Posted by Eric Gravert on 5/14/2008 at 2:13 PM
Ivan, after waiting a period of time I was able to get the dm_os_ring_buffers query to execute. I have dumped the results into a file and attached it. Hope that helps.

If you have any more questions or would like me to run any more diagnostics, please let me know, thanks!
Posted by Eric Gravert on 5/14/2008 at 1:54 PM
I enabled the trace flag and was able to reproduce the error. However, sql did not produce a dump log and when I run the command you suggested, I get the following error:

Msg 701, Level 17, State 123, Line 2
There is insufficient system memory in resource pool 'default' to run this query.

If there is any other information I can provide, just let me know. Thanks!
Posted by Microsoft on 5/9/2008 at 5:02 PM
It seems that SQL Server is running out of memory. What you can do here is to start SQL server with trace flag 8004 (-T8004). This trace flag will force SQL server to create a minidump once (the first time) when an out of memory condition is hit. The dump file will be placed in the SQL Server LOG folder. If you hit this problem again, you should look for a dump in the LOG folder and send it to us. If a dump is not found then keep the server running and execute the following query: select * from sys.dm_os_ring_buffers. Then, please, send us the results.