increasing structure cache size

04-02-2005 15:02:07

Hi,





I have a couple of structure tables that have 450,000+ compounds. When


I use the web interface to search for compounds, I get this error


Table "XYZ" could not fit into structure cache.





Is there some way to work around this issue?

ChemAxon 9c0afc9aaf

04-02-2005 15:20:19

Hi,





Basically, you should increase the heap memory limit for the Java Virtual Machine (JVM) that runs the web server (Tomcat).





You can specify this limit with the "-Xmx" JVM option.





Please see the following link on how to set this option:





http://www.jchem.com/doc/admin/tomcat.html#env





Please note, that setting this value too high can cause problems:


the specified amount of memory should easily fit into the RAM beside the operating system and other programs.





1 million average drug-like structures should fit into approximately 100 MB memory.


(assuming default fingerprint length)





You should aim for a limit where all your tables can fit into the memory at the same time.





You can read more on how to calculate expected memory consumption here:





http://www.jchem.com/FAQ.html#outofmemory





Regards,





Szilard

ChemAxon 587f88acea

04-02-2005 15:46:09

Hi Szilard,


I set the XMx to 1024 MB, which is way above 100MB. This was to take care of the lang.outOfMemory error which I was getting while using compr on command line. That error is now suppressed; but then I still get the error on the web interface while doing similarity search that says "Table XYZ could not fit into structure cache".


Table XYZ is less than half a million and are compounds from a professional drug dicovery company.


Best


Renju

ChemAxon 9c0afc9aaf

04-02-2005 16:01:55

Hi Renju,





Please note that the -Xmx setting for command-line applications has no effect on Tomcat, since these are different settings.





For command-line applications you specify this with the JCHEM_JAVA_OPTS environment variable. (or by editing the batch file or shell script)





For Tomcat however, you specify it with CATALINA_OPTS or in later versions from the user interface of Tomcat.





Please see the link I wrote on how to set it for Tomcat.





Best regards,





Szilard

User 8af31e9388

04-02-2005 16:50:36

Hi Szilard,


I added the following option after shutting down Tomcat, as mentioned in the admin manual


-server


-Xmx400m





Tomcat doesn;t restart after that. Is there something that I could be missing?





Rgds


Renju

ChemAxon 9c0afc9aaf

04-02-2005 17:53:03

Hi,





Probably you do not have 400 MB memory in your machine, so the setting is too high.





The referred documentation says:





"Note: it is recommended to specify a considerably lower value than the amount of physical RAM in your system, so the operating system and other applications will also have enough space. Otherwise the swap memory of the operating system will be used, which can result in high disk activity, and reduced system performance."





If you have only 256 MB RAM in your system, you might try to specify -Xmx128m, but I would rather recommend buying more memory.





Szilard

ChemAxon 587f88acea

04-02-2005 21:15:19

Actually, I have 1GB RAM on this machine. That's the reason I had set JCHEM_JAVA_OPTS to be 1024 MB and that works fine. I tried setting the JVM option in Tomact to be -Xmx128m; still Tomcat refuses to start. I guess the issue does not lie in the memory capacity limitation.

ChemAxon 9c0afc9aaf

05-02-2005 00:36:15

In this case you should look for syntax error in the JVM options text.





Please also see the common pitfalls with Tomcat:





http://www.jchem.com/doc/admin/tomcat.html#pitfalls





Szilard

User 8688ffe688

24-02-2005 22:09:30

I ran into this problem when configuring tomcat on linux. I'm using JDK1.4.2_07. My linux server has 2GB RAM. My initial parameters failed to start tomcat "-server -Xms512m -Xmx1024m" the JVM complainted about illegal initialization parameters. After playing around, I discovered if I set the -Xms parameter to more than 512m tomcat fails to start.





I'm not sure the behavior on windows. I discovered memory init issues by monitoring $CATALINA_HOME/logs/catalina.out log file.





Might want to try using jdk-1.5.0_01 on tomcat-5.5.7.





good luck