October 29, 2014 at 1:14 pm
Hello,
One of our production SQL cluster is eating up more memory on server.
Here are the server specifications :
OS : Windows 2008 R2 Enterprise
SQL : SQL Server 2008 SP2 standard edition ( 2 node cluster )
Memory : 16 GB ( 8 Gb to SQL and rest to OS )
CPU : 8
This server is heavily used by CLR and linked server events.
I have seen the memory usage of databases , it's not using more than 7 GB and leaving 1 GB free in sql memory area ( from our Idera SQL dm monitoring tool ). I'm suspecting CLR events are causing these spikes.
When i look at the task manager sqlserver.exe is using 15.7 Gb ( close to 16 GB )
Not sure how to see which process are using the memory.
Also we are seeing the below error messages in error log very frequently
10/27/2014 15:23:52,spid1s,Unknown,AppDomain 85 (xxxxxx) is marked for unload due to memory pressure.
I have looked at some blogs in internet, i didnt get any correct info. I have seen this is kind of bug in SQL 2005 32-bit system but we are using 64 bit system.
http://support.microsoft.com/kb/969962
Can anyone please help me on this ?
Thanks in advance
October 29, 2014 at 2:14 pm
Not a bug. CLR uses memory outside of the limit set by max server memory. You must have some memory-intensive CLR. Chat with the devs, make sure they're not doing things like opening large recordsets or anything like that.
p.s. Don't use task manager to check SQL's memory. Perfmon or SQL DMVs. Task manager lies.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
October 30, 2014 at 12:32 am
I think you should use SQL Activity monitor or profiler to get the CLR which is using more memory.
Viewing 3 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic. Login to reply