From: <ju...@cs...> - 2006-07-12 17:31:55
|
"Kumar, Sanjeev" <San...@ng...> writes: > > But I am getting a new type of error message, provided below. Can some > one pl. help me in understanding/resolving the error message. > > > GUS::Model::SRes::Taxon=3DHASH(0xa166cf8) merged with Taxon_id =3D > GUS::Model::SRes::Taxon=3DHASH(0x9ee9e54) > DBD::Oracle::db do failed: ORA-02292: integrity constraint > (DOTS.NASEQUENCEIMP_FK02) violated - child record found (DBD ERROR:OCIStmtExecute) > [for Statement "DELETE FROM > SRes.Taxon WHERE taxon_id =3D 525455 > "] at /home/oragus35/GUS/gus_home/lib/perl/GUS/ObjRelP/DbiDbHandle.pm > line 119, <MERGED> line 5476. > [...] I ran into this very same error as well. What is happening is that LoadTaxon is attempting to delete obsolete taxonomy entries _however_ some of these taxonomy entries are still referenced by the TAXON_ID field of DoTS.NASequence. What LoadTaxon _should_ _do_ is update all places in DoTS.NASequence/DoTS.AASequence (and possibly other tables) so that obsolete taxonomy entries are replace in the tables that reference them _before_ LoadTaxon tries to delete them from SRes.Taxon. My jury-rig (and I do mean jury-rig) was to run a perl script on merged.dmp to convert each data line to a SQL line which might look like: update DoTS.ExternalAASequence set taxon_id = 255892 where taxon_id = 256194; thus, updating the taxon_id fields. When it comes to updating Taxonomy information LoadTaxon does not appear to be very robust. Josef Josef Jurek, Ph.D. Daphne Preuss Laboratory Molecular Genetics and Cell Biology The University of Chicago ju...@cs... voice: (773) 702-9559 fax: (773) 702-6648 |