Error when creating indexes

User 0ec4156b13

22-09-2004 10:25:43

Hi,





I got the following error when I try to create a jc_idxtype index on a structure table generated with jcman (sorry for the french words):





ORA-29855: erreur d'exécution de la routine ODCIINDEXCREATE


ORA-29532: appel Java arrêté par une exception Java non interceptée : java.lang.RuntimeException: The index on table 'JCHEMUSER.NCI_DEMO' contains obsolete data. (Current index version: 4, index version for 'JCHEMUSER.NCI_DEMO': -1.) Please, drop the domain index and recreate it.


ORA-06512: à "JCHEMUSER.JCHEM_CORE_PKG", ligne 5


ORA-06512: à "JCHEMUSER.JC_IDXTYPE_IM", ligne 20





My SQL order is:





CREATE INDEX nci_demo_idx ON nci_demo (cd_smiles) INDEXTYPE IS jc_idxtype;





The version of Jchem is 2.3.3 (unregistered)





Thanks,





Eric.

ChemAxon aa7c50abf8

22-09-2004 12:12:21

The error message indicates that JChem Cartridge could not find the "version" property in the property table "jchemproperties". There should be a row in that table, who's "prop_name" column is


table.JCHEMUSER.NCI_DEMO.version





I can think of only two reasons how this could have happend either you did not import the NCI_DEMO using "jchemproperties" as the property table (you may have used another name) or this entry has somehow been deleted from the "jchemproperties" table. You can restart JChemManager and check the "Property table" connection property to find out what property table you have used for the very last time.





(There may be a third reason which is very unprobable you imported the structure table using an old JChem version, where the "version" property has not yet been introduced.)





Peter

User 0ec4156b13

22-09-2004 12:57:45

Hi Peter,





here is the content of my JCHEMPROPERTIES table:


**************************************


db.ConstraintNeededForPrimaryKeyDef false


registration.code XXXXX


registration.code.cluster XXXXXX


registration.code.cartridge XXXXX


db.isAutoIncrementProperty true


db.autoIncrementTriggerCreation built-in value


db.autoIncrementTriggerCleanup built-in value


db.existsBitwiseAND BITAND


table.JCHEMUSER .NCI_DEMO.updateCounter 6


table.JCHEMUSER .NCI_DEMO.absoluteStereo true


table.JCHEMUSER .NCI_DEMO.fingerprint.numberOfBits 512


table.JCHEMUSER .NCI_DEMO.fingerprint.numberOfOnes 2


table.JCHEMUSER .NCI_DEMO.fingerprint.numberOfEdges 6


table.JCHEMUSER .NCI_DEMO.version 4





**************************************





As you can see the table.JCHEMUSER .NCI_DEMO.version property is set to 4


Any idea?





Eric.

ChemAxon aa7c50abf8

22-09-2004 13:52:25

I guess the problem is that you inadvertently put a white space between the schema name and the table name when you created the table with JChemManager. That's why JChem Cartridge cannot find these properties. (The white space is probably not a problem for JChemManager because it always parses the entire JChemProperties table after an operation is selected by the user. This is how JChemManager is able to offer the list of JChem tables to the user.)





You can do two things to solve the problem (a) (recommended) drop the table with JChem manager and recreate it making sure that there is no white space between anything when you enter the name of the table; (b) manually remove the whitespaces from the property names in the jchemproperties table.





Peter

User 0ec4156b13

22-09-2004 16:18:17

Thanks Peter! I really didn't notice the space caracter. Actually it was at the end of the login name on the "connect" form.





Eric.

ChemAxon 9c0afc9aaf

22-09-2004 17:05:23

Thanks for the information, we will truncate leading and trailing whitespace in the future versions of JChem.