From: Jonathan C. <cra...@pc...> - 2003-10-06 00:01:49
|
Hi Sam- On Sat, 4 Oct 2003, sam wang wrote: > DBI subclasses 'GUS::ObjRelP::DbiDbHandle::db' and ::st are not setup, > RootClass ignored at The above error is annoying, but should not affect the correct operation of the plugin. It has to do with the way that the DBI classes are subclassed in the GUS code, and a workaround is available (could someone commit this to CVS?) > DBD::Oracle::st execute failed: ORA-02291: integrity constraint > (CORE.ALGORITHMINVOCATION_FK04) violated - parent key not found (DBD ERROR: > OCIStmtExecute) [for statement `` > INSERT INTO Core.AlgorithmInvocation ( group_read, user_read, > algorithm_implementation_id, modification_date, end_time, > other_write, row_group_id, machine_id, user_write, other_read, > group_write, cpus_used, start_time, row_user_id, row_alg_invocation_id, > row_project_id, algorithm_invocation_id, result ) > VALUES ( ?, ?, ?, SYSDATE, SYSDATE, ?, ?, ?, ?, ?, ?, ?, > SYSDATE, ?, ?, ?, ?, ? ) '' with params: :p5='1', :p12=1, :p8=1, :p14='2', > :p10=1, :p13='1', :p2=1, :p6=0, :p3='2', :p15='meta', :p7=1, :p1=1, :p4=0, > :p9=1, :p11='1']) at > /opt/gus/gus_home/lib/perl/GUS/ObjRelP/DbiDbHandle.pm line 144. > > SQL ERROR!! involving > > INSERT INTO Core.AlgorithmInvocation ( group_read, user_read, > algorithm_implementation_id, modification_date, end_time, > other_write, row_group_id, machine_id, user_write, other_read, > group_write, cpus_used, start_time, row_user_id, row_alg_invocation_id, > row_project_id, algorithm_invocation_id, result ) > VALUES ( ?, ?, ?, SYSDATE, SYSDATE, ?, ?, ?, ?, ?, ?, ?, > SYSDATE, ?, ?, ?, ?, ? ) > Values: 1, 1, 2, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 2, meta at > /opt/gus/gus_home/lib/perl/GUS/ObjRelP/DbiDbHandle.pm line 184 Now this is the real error; a failed INSERT statement. Notice that the error mentions a violation of the integrity constraint "CORE.ALGORITHMINVOCATION_FK04". You can find the definition of this constraint in the file GUS/Model/schema/oracle/core-constraints.sql (from the GUS CVS repository): alter table @oracle_core@.ALGORITHMINVOCATION add constraint ALGORITHMINVOCATION_FK04 foreign key (MACHINE_ID) references @oracle_core@.MACHINE (MACHINE_ID); So the problem is that your INSERT statement is referencing a nonexistent row in core.Machine (namely the one with machine_id = 0). Insert this missing row into the core.Machine table (using SQL*PLUS, since you won't be able to do it with 'ga' until the problem is fixed) and it should allow the insert to succeed. Jonathan |