User a18e201107
28-10-2012 21:43:16
Hello
I am trying to use the generatemd tool to create pharmacophore fingerprints on a set of 250K compounds and I am running into an issue with memory. Clearly from the error (below) this is not a Jchem out of memory issue, rather a MySQL one probably from trying to return too many results for the generatemd program to use. I was curious if there are any best practices for dealing with large sets of data whereby a database connection is made followed by a descriptor writer back to the DB? Is this something that should be scripted in a loop (10K structures or so at a time?) or is there a way to limit the reads from the command line?
As a followup I am hoping to then use the Screener tool which I suspect may have a similar issue. Since I cannot place all structures from my database in memory will this effect the outcome of the screen experiment? In otherwords does the screener tool need the full test set or can it be broken down into smaller more manageable test sets?
Thank you for any insight into the tools,
Dennis
C:\Program Files\ChemAxon\JChem\examples\config>generatemd c -a structures -k PF
pharmafinger -c pharma-frag.xml -d "com.mysql.jdbc.Driver" -u "jdbc:mysql://loc
alhost:3306/leadlike"
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at com.mysql.jdbc.Buffer.<init>(Buffer.java:58)
at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1452)
at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2883)
at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:476)
at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2576)
at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1757)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2167)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2642)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2571)
at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1464)
at chemaxon.descriptors.GenerateMD.initSource(GenerateMD.java:953)
at chemaxon.descriptors.GenerateMD.init(GenerateMD.java:654)
at chemaxon.descriptors.GenerateMD.main(GenerateMD.java:1453)