Linux Cartridge Install issues

User 9f7888a878

29-10-2007 09:53:27

I'm installing Cartridge on Linux now, No errors at the procedure of installation


However, when I trid to execute a SQL below, I got some errors below.





SQL>SELECT cd_id FROM jchem WHERE JCHEM.jc_contains(cd_smiles, 'CN1C=NC2=C1C(=O)N(C)C(=O)N2C') = 1


*


ERROR at line 1:


ORA-04045: errors during recompilation/revalidation of JCHEM.JC_CONTAINS


ORA-06552: PL/SQL: Declaration ignored


ORA-06553: PLS-305: previous use of 'JC_CONTAINS' (at line 1) conflicts with


this use


ORA-06552: PL/SQL: Declaration ignored


ORA-06553: PLS-305: previous use of 'JC_CONTAINS' (at line 1) conflicts with


this use


ORA-06552: PL/SQL: Declaration ignored


ORA-06553: PLS-302: component 'JC_IDXTYPE_IM' must be declared








My enviroment is


OS: Linux: fedora7


Oracle: 10g2


Jchem: 3.2.11





Could you give me some suggestions?


Thansk

ChemAxon aa7c50abf8

29-10-2007 10:09:10

Is this a new JChem Cartridge installation or is this an upgraded installation? If it is an upgrade, from which JChem version is it?





Thanks,


Peter

User 9f7888a878

29-10-2007 10:32:25

Dear Peter. It is a new Cartridge installation.


Thanks

ChemAxon aa7c50abf8

29-10-2007 10:58:41

Have you installed Oracle Database 10g Products from the Oracle Database Companion CD?





Thanks


Peter

User 9f7888a878

29-10-2007 11:16:46

Yes, I installed.


BTW, I'm installed anoter copy of Cartridge in a window OS.


I got same errors.


I think mam be my installation procuedure not correct.


I didn't execute jcart_user_hlp.sql at the lastest strep , is it necessary?


I don't know how to use it.


Regards


--


Fan

ChemAxon aa7c50abf8

29-10-2007 11:42:02

If the structure tables and jc_idxtype indexes are in the same schema as JChem Cartridge has been installed with, you don't need to use jcart_user_hlp.sql.





What is the character encoding of your database? You can find this out by executing as SYSTEM:


Code:
select * from nls_database_parameters where parameter='NLS_CHARACTERSET'






Thanks


Peter

User 9f7888a878

29-10-2007 11:53:21

Hi, Peter.


Yes, The structure tables and jc_idxtype indexes are in the same schema as JChem Cartridge has been installed with.





My character encoding is JA16SJIS


---


SQL> select * from nls_database_parameters where parameter='NLS_CHARACTERSET'


2 ;





PARAMETER


------------------------------


VALUE


--------------------------------------------------------------------------------


NLS_CHARACTERSET


JA16SJIS


----------








We installed Cartridge 4 onth ago. It worked well.


Thanks


--


Fan

ChemAxon aa7c50abf8

29-10-2007 12:15:02

I will try reproducing the problem with the Japanese character set you are using.





Still, I find it strange that you get PL/SQL recompilation errors during search. The PL/SQL packages which are loaded during JChem Cartridge installation are normally compiled as they are being loaded. If the PL/SQL compiler finds syntactic problems in that code, I'd expect the compiler to already find them during installation, so I'd expect you to receive errors already during installation.





Anyway, I will see what I get with Japanese characters.





Thanks


Peter

User 9f7888a878

29-10-2007 14:15:51

Hi, Peter


Yes I also think it should already have some errors when load the packages. But no errors found.


I will create an English oracle SID and install Cartridge again, I will let you know the result later.





Thanks a lot.


--


Fan

ChemAxon aa7c50abf8

29-10-2007 21:47:02

Hi Fan,





The characterset doesn't make any difference on my side -- JC_CONTAINS works with JA16SJIS as well.





Are you able to compile the packages manually (e.g. with Oracle SQL Developer)?





Thanks


Peter

User 9f7888a878

30-10-2007 01:29:45

Hi, Peter


I also installed in an USASCII coding oracle. Still had same errors.


I think I have some mistake in my my install procedure . I will try again today.


BTW, I didn't compile the packages( In fact , I don't know how to do), I just used Install.bat while installation.


Thanks


--


Fan

User 9f7888a878

30-10-2007 09:25:10

Hi, Peter


I think I have found the reson.


If I create a structure table named JCHEM in the Cartridge owner schema, the errors I reported can be reproduced. And, if I use another table name but JCHEM, it will works well.





Thanks a lot for your helps.


Best Regards


---


Fan

User 9f7888a878

31-10-2007 10:16:27

I found If I created a structure table that has same name with schema's name then the errors could be reproduced even I search another table.


Best Regards


--


Fan

ChemAxon aa7c50abf8

31-10-2007 11:15:06

I you're looking for things that you can break by giving the same name to a schema and to a database object, I can add one more :-) : Oracle bug 2894111 --- PROBLEMS WITH FUNCTION BASED INDEX IF PACKAGE WITH SCHEMA NAME IS PRESENT may result (for example) in triggers getting invalidated and impossible to recover (other than by dropping and recreating the entire schema).





The lesson: look at schemata as if they were just another kind of database objects. Use names that are unique between database objects and schemata as well. BTW, this kind of name clash problem has nothing to do with JChem, it is specific to Oracle.





Cheers,


Peter