R-group problem with JChem 5.3.2

User 941c2467a3

10-05-2010 15:38:05

Dear Chemaxon,


We are using JChem 5.0 right now and we are considering to update to JChem 5.3.2. But we found one reaction file (.rxn) containing R-groups works well with JChem 5.0 but triggers an error message with JChem 5.3.2.


The .mrv file is attached in this thread, the SMILES string we are testing is, "c1ccc(cc1)-c1ccccc1" (biphenyl). Here are the output details,


JChem 5.0:








/react -a changing -v -r ../molecules/bt0353.mrv "c1ccc(cc1)-c1ccccc1"
Oc1cccc(-c2ccccc2)c1O
Total running time (ms) : 761
Reaction setting (ms)   : 219
Reactant setting (ms)   : 1
Reaction processing (ms): 541

JChem 5.3.2:








react -v -r ../molecules/bt0353.mrv "c1ccc(cc1)-c1ccccc1"
SEVERE: Array index out of range: 2147483647  [main|chemaxon.reaction.ConcurrentReactorProcessor.main|05/10/2010 10:32:52]
chemaxon.reaction.ReactionException: chemaxon.util.concurrent.processors.WorkUnitException: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 2147483647
Caused by:
java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 2147483647
Caused by:
Array index out of range: 2147483647
        at chemaxon.reaction.ConcurrentReactorProcessor.init(ConcurrentReactorProcessor.java:476)
        at chemaxon.reaction.ConcurrentReactorProcessor.react(ConcurrentReactorProcessor.java:495)
        at chemaxon.reaction.ConcurrentReactorProcessor.run(ConcurrentReactorProcessor.java:618)
        at chemaxon.reaction.ConcurrentReactorProcessor.main(ConcurrentReactorProcessor.java:1062)
Caused by: chemaxon.util.concurrent.processors.WorkUnitException: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 2147483647
        at chemaxon.util.concurrent.processors.InputOrderedWorkUnitProcessor.process(Unknown Source)
        at chemaxon.util.concurrent.processors.InputOrderedWorkUnitProcessor.processInput(Unknown Source)
        at chemaxon.util.concurrent.processors.WorkUnitWorker.work0(Unknown Source)
        at chemaxon.util.concurrent.processors.WorkUnitWorker.work(Unknown Source)
        at chemaxon.util.concurrent.worker.Worker$1.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at chemaxon.util.concurrent.worker.Worker.run(Unknown Source)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 2147483647
        at chemaxon.struc.MoleculeGraph.getAtom(Unknown Source)
        at chemaxon.reaction.ReactionPerformer.getSearchData(ReactionPerformer.java:1025)
        at chemaxon.reaction.ReactionPerformer.reactHit(ReactionPerformer.java:745)
        at chemaxon.reaction.ReactionPerformer.reactOne(ReactionPerformer.java:600)
        at chemaxon.reaction.ReactionPerformer.reactOneDuplicateFiltered(ReactionPerformer.java:565)
        at chemaxon.reaction.ReactionPerformer.reactBase(ReactionPerformer.java:552)
        at chemaxon.reaction.ReactionPerformer.react(ReactionPerformer.java:531)
        at chemaxon.reaction.Reactor.react(Reactor.java:1314)
        at chemaxon.reaction.ConcurrentReactorProcessor$ReactorWorkUnit.call(ConcurrentReactorProcessor.java:340)
        ... 14 more

ERROR: An error occured, check the log for details. Use --ignore-error option to ignore errors during reaction processing.


Would you please let us know how to fix this problem? Thanks a lot!


 


Best regards,


Jeff Gao

ChemAxon e08c317633

11-05-2010 11:09:58

Hi Jeff,


It's a bug, related to automatic mapping of R-atoms. We are working on the fix.


Until it's fixed please use the  "--skip-reaction-mapping-check" (or "-A") command line option to skip automapping of the reaction.


Example:


react -r bt0353.mrv --skip-reaction-mapping-check "c1ccc(cc1)-c1ccccc1"
Oc1cccc(-c2ccccc2)c1O

If the reaction is well-mapped, then it's safe to use this option.


Zsolt

User 941c2467a3

11-05-2010 13:39:22










Zsolt wrote:

Hi Jeff,


It's a bug, related to automatic mapping of R-atoms. We are working on the fix.


Until it's fixed please use the  "--skip-reaction-mapping-check" (or "-A") command line option to skip automapping of the reaction.


Example:


react -r bt0353.mrv --skip-reaction-mapping-check "c1ccc(cc1)-c1ccccc1"
Oc1cccc(-c2ccccc2)c1O

If the reaction is well-mapped, then it's safe to use this option.


Zsolt



Thank you for letting me know this Zsolt. Could you tell me how to implement the parameter "--skip-reaction-mapping-check" in java code?


Best,
- Jeff Gao

ChemAxon e08c317633

11-05-2010 13:52:49










JeffGao wrote:



Thank you for letting me know this Zsolt. Could you tell me how to implement the parameter "--skip-reaction-mapping-check" in java code?


Best,
- Jeff Gao



Use the method Reactor.setSkipReactionMappingCheck(boolean).


Zsolt

User 941c2467a3

11-05-2010 14:48:39










Zsolt wrote:










JeffGao wrote:



Thank you for letting me know this Zsolt. Could you tell me how to implement the parameter "--skip-reaction-mapping-check" in java code?


Best,
- Jeff Gao



Use the method Reactor.setSkipReactionMappingCheck(boolean).


Zsolt



Thank you!


- Jeff Gao

ChemAxon e08c317633

21-05-2010 09:52:03

This bug will be fixed in JChem 5.3.4.


Zsolt

User 941c2467a3

24-05-2010 15:21:09










Zsolt wrote:

This bug will be fixed in JChem 5.3.4.


Zsolt



Thank you for lettimg me know this!


Jeff

User 941c2467a3

19-06-2010 02:34:46










JeffGao wrote:










Zsolt wrote:

This bug will be fixed in JChem 5.3.4.


Zsolt



Thank you for lettimg me know this!


Jeff



Zsolt,


I tried jchem 5.3.4.It will not output exceptions but the product looks still different from the version 5.0.


I used reactor (version 5.3.4 ) react -v -r /project/umbbd.msi.umn.edu/src/molecules/bt0353.mrv "c1ccc(cc1)-c1ccccc1"


And it gave me this product:
Oc1:cc:cc(-c2ccccc2):c1O


I used reactor (version 5.0) react -v -a changing -r /project/umbbd.msi.umn.edu/src/molecules/bt0353.mrv "c1ccc(cc1)-c1ccccc1"


And it gave me this product:
Oc1cccc(-c2ccccc2)c1O


Althought "Oc1:cc:cc(-c2ccccc2):c1O" can be standardized to "Oc1cccc(-c2ccccc2)c1O" by,


newMol = oldMol.toFormat("smiles");


the direct output from 5.3.4 still looks strange.


Thank you for any suggestions!


- Jeff


 

ChemAxon e08c317633

21-06-2010 11:38:56

Jeff,


":" represents an aromatic bond, so  "Oc1:cc:cc(-c2ccccc2):c1O" and "Oc1cccc(-c2ccccc2)c1O" SMILES are equivalent.


We will check later why the SMILES representation of the output has changed.


Zsolt

User 941c2467a3

21-06-2010 15:41:10










Zsolt wrote:

Jeff,


":" represents an aromatic bond, so  "Oc1:cc:cc(-c2ccccc2):c1O" and "Oc1cccc(-c2ccccc2)c1O" SMILES are equivalent.


We will check later why the SMILES representation of the output has changed.


Zsolt



Thanks.