User 4140faeba5
24-02-2006 09:44:50
Hi.
JCHEM_CORE_PKG.GETENVIRONMENT()
--------------------------------------------------------------------------------
Oracle Database 10g Release 10.2.0.1.0 - 64bit Production
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
JChem version in the database: 3.1.5
JChem version in the Tomcat server: 3.1.5
java.vm.version: 1.5.0_06-b05
java.vm.vendor: Sun Microsystems Inc.
Apache Tomcat/5.5.15
JCHEM_CORE_PKG.GETENVIRONMENT()
--------------------------------------------------------------------------------
Major JDBC version in Tomcat: 10
Minor JDBC version in Tomcat: 2
I'm getting the following error when I try to load structures
"DBD::Oracle::st execute failed: ORA-29516: Aurora assertion failure: Assertion failure at joeintp.c:373
Interpreter hit null Java opcode.
ORA-06512: at "JCHEM.JCHEM_BLOB_PKG", line 112
ORA-06512: at "JCHEM.JC_INSERTB", line 6
ORA-06512: at "BVTSCREEN.INSERT_STRUCTURE_BLOB", line 13
ORA-06512: at line 2 (DBD ERROR: OCIStmtExecute) [for Statement "
begin insert_structure_blob(3221091"
My procedure looks like this
"CREATE OR REPLACE PROCEDURE insert_structure_blob(v_compound_id VARCHAR2,v_structure CLOB) AS
cdida cd_id_array;
v_size BINARY_INTEGER :=0;
buffer VARCHAR2(32000);
buffer2 RAW(32000);
v_mol VARCHAR2(32767) :='';
v_table VARCHAR2(50) := 'JCSCREENMOL_MOLTABLE';
BEGIN
v_size := dbms_lob.getlength(v_structure);
v_mol := dbms_lob.SUBSTR(v_structure,v_size,1);
dbms_lob.READ(v_structure,v_size,1,buffer);
buffer2 := utl_raw.cast_to_raw(buffer);
cdida := jc_insertb(buffer2,v_table,'jchem.jchemproperties','false','false','flags:c');
EXECUTE IMMEDIATE 'update jcscreenmol_moltable set dummy_id=''' || v_compound_id || ''' where cd_id = ' || TO_CHAR(cdida(1));
-- Now we must use a bind variable becuase the molfile can be over 4000 characters
EXECUTE IMMEDIATE 'update jcscreenmol_moltable set molfile=:x where cd_id = ' || TO_CHAR(cdida(1)) || '' USING v_mol;
END;
/
"
If I retry to load the same molecule is works, so it has nothing to do with the molecule.
/Mikael
JCHEM_CORE_PKG.GETENVIRONMENT()
--------------------------------------------------------------------------------
Oracle Database 10g Release 10.2.0.1.0 - 64bit Production
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
JChem version in the database: 3.1.5
JChem version in the Tomcat server: 3.1.5
java.vm.version: 1.5.0_06-b05
java.vm.vendor: Sun Microsystems Inc.
Apache Tomcat/5.5.15
JCHEM_CORE_PKG.GETENVIRONMENT()
--------------------------------------------------------------------------------
Major JDBC version in Tomcat: 10
Minor JDBC version in Tomcat: 2
I'm getting the following error when I try to load structures
"DBD::Oracle::st execute failed: ORA-29516: Aurora assertion failure: Assertion failure at joeintp.c:373
Interpreter hit null Java opcode.
ORA-06512: at "JCHEM.JCHEM_BLOB_PKG", line 112
ORA-06512: at "JCHEM.JC_INSERTB", line 6
ORA-06512: at "BVTSCREEN.INSERT_STRUCTURE_BLOB", line 13
ORA-06512: at line 2 (DBD ERROR: OCIStmtExecute) [for Statement "
begin insert_structure_blob(3221091"
My procedure looks like this
"CREATE OR REPLACE PROCEDURE insert_structure_blob(v_compound_id VARCHAR2,v_structure CLOB) AS
cdida cd_id_array;
v_size BINARY_INTEGER :=0;
buffer VARCHAR2(32000);
buffer2 RAW(32000);
v_mol VARCHAR2(32767) :='';
v_table VARCHAR2(50) := 'JCSCREENMOL_MOLTABLE';
BEGIN
v_size := dbms_lob.getlength(v_structure);
v_mol := dbms_lob.SUBSTR(v_structure,v_size,1);
dbms_lob.READ(v_structure,v_size,1,buffer);
buffer2 := utl_raw.cast_to_raw(buffer);
cdida := jc_insertb(buffer2,v_table,'jchem.jchemproperties','false','false','flags:c');
EXECUTE IMMEDIATE 'update jcscreenmol_moltable set dummy_id=''' || v_compound_id || ''' where cd_id = ' || TO_CHAR(cdida(1));
-- Now we must use a bind variable becuase the molfile can be over 4000 characters
EXECUTE IMMEDIATE 'update jcscreenmol_moltable set molfile=:x where cd_id = ' || TO_CHAR(cdida(1)) || '' USING v_mol;
END;
/
"
If I retry to load the same molecule is works, so it has nothing to do with the molecule.
/Mikael