quad proc with 2GB ram gives out of mem error | SQL Server Performance Forums

SQL Server Performance Forum – Threads Archive

quad proc with 2GB ram gives out of mem error

hi all,
i got a problem with a query on a SQL Server 2000. My database is on a 4 proc machine with 2GB RAM. The same database happens to reside on a smaller computer, 1 proc and 512MB RAM. The same query works on the smaller machine and it gives me an out of memory error message on the first one. Are there any special settings for large memory, multiple procs (the only ones that I saw are in the properties window and they seem to be OK – dynamic use of memory with a minimum of 1MB to a maximum of 2G, etc…) Any ideas?
WHat is the edition of SQL Server? Post the correct error message. Satya SKJ
This posting is provided “AS IS” with no rights for the sake of knowledge sharing.
And service pack.
Luis Martin
SQL-Server-Performance.com One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important
Bertrand Russell
All postings are provided “AS IS” with no warranties for accuracy.
SQL Server Standard Edition 8.00.760 (SP3)<br /><br />The error message is below (I included the whole stack):<br /><br />Apache Tomcat/4.0.6 – HTTP Status 500 – Internal Server Error<br /><br />type Exception report<br />message Internal Server Error<br />description The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request.<br />exception <br />javax.servlet.ServletException: Servlet execution threw an exception<br />at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)<br />at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)<br />at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)<br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)<br />at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)<br />at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)<br />at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)<br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)<br />at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)<br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)<br />at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)<br />at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)<br />at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)<br />at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)<br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)<br />at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)<br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)<br />at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)<br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)<br />at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:46<img src=’/community/emoticons/emotion-11.gif’ alt=’8)’ /><br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)<br />at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)<br />at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)<br />at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)<br />at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)<br />at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)<br />at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)<br />at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)<br />at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)<br />at java.lang.Thread.run(Thread.java:595)<br />root cause <br />java.lang.OutOfMemoryError: Java heap space<br /><br />To tell you the truth I am not convinced anymore this is a SQL Server problem – or, at least I don’t know how was it determined to be such a problem. Anyway, as I said before, the same servlet executed against the db on the other machine does not issues this error message (same SQL Server version, same Tomcat version, same sorces, same everything)…<br />Thanks a bunch for helpng,<br />kowalsky<br /><br /><br />
?? Did you get any SQL Server errors? Look in the SQL Server error log and the event logs on the SQL Server. It would be impossible for us to tell if this is SQL Server related from what you gave us. We would be guessing at best. My guess is the actual java app though is causing the issue.<br /><br />Is the java app running on the same box as the SQL Server? (I’m a little dense, so explain clearly. [<img src=’/community/emoticons/emotion-1.gif’ alt=’:)‘ />]) <br /><br />MeanOldDBA<br />[email protected]<br /><br />When life gives you a lemon, fire the DBA.
quote:Originally posted by kowalsky
java.lang.OutOfMemoryError: Java heap space
Question 1:
Is Apache Tomcat running on the same machine as the 4 proc 2GB RAM one? Then you need to limit the SQL server max memory so that it leaves some memory to other applications like Apache Tomcat. Because the error you get is from the java engine running out of memory. Question 2:
If Apache Tomcat is on a third machine seperate from both the 4 proc 2GB RAM one and the 1 proc 512MB RAM one then the error seem very strange. It’s still a java error so the memory issues should be located on the on the machine running Apache Tomcat. Maybe you are returning a larger data set from the big server and it uses up the memory allocated to java. Note that in most java engines you can configure how much memory it can use. Make sure it’s not set to a low default value like 64MB or something.