[Bioperl-l] loading bioSQL schemas

Hilmar Lapp hlapp at gnf.org
Wed May 21 12:02:57 EDT 2003


It seems the root cause is a species parsing problem in the swissport parser. Are you sure you run bioperl 1.2.1? The stack trace of that exception is essentially non-existant (it only gives the method itself); are you sure you did not truncate that stack trace?

I guess the failing entry is not the first one in the file, and plenty of others went in no problem before?

On a side note, species designation in flat files and being able to correctly parse it in all situations is a moving target. We're relatively good at it meanwhile, but 100% is hard if not impossible to reach. Secondly, the taxon storage in biosql is compatible with the NCBI taxon database, but more or less incompatible with Bio::Species. The bioperl-db adaptor tries to bridge the gap as best as it can, but Bio::Species simply doesn't contain all the information you would need to do it right (it may actually be at fault here, instead of the parser, but the minuscule stack trace prevents me from determining it).

So, to make the long story short: Aaron Mackey wrote a wonderful script that preloads your biosql database with the NCBI taxon database. If you then load a sequence database, species will be looked up by NCBI taxonID - and found, rather than inserted from a clumsy object. (BTW Jason Stajich is writing the Bio::Taxonomy modules which at some point in the future will supercede Bio::Species and will hopefully rid us of many associated problems.)

On a second side note, for consistency and to protect yourself from spurious problems, I'd always put a double-dash before long options.

	-hilmar

> -----Original Message-----
> From: ulrik plate [mailto:ulrikplate at hotmail.com] 
> Sent: Wednesday, May 21, 2003 10:01 AM
> To: biosql-l at open-bio.org; bioperl-l at bioperl.org
> Subject: [Bioperl-l] loading bioSQL schemas
> 
> 
> I seem to get all sort of different errormessages when I try 
> to load with th 
> efollowing command.
> I'm new to the mazy world of biodatabases, so please how 
> mercy on me if i 
> seem to have completely lost it.
> 
> perl load_seqdatabase.pl --driver Pg --testonly -safe -dbuser 
> ulrik -dbname 
> dbname -namespace swissprot -format swiss /net/data/sprot/sprot.dat
> 
> The following is a small collection of the numerous 
> exceptions and errors 
> that I have cut pasted...
> 
> -------------------- WARNING ---------------------
> MSG: insert in Bio::DB::BioSQL::SeqAdaptor (driver) failed, 
> values were 
> ("3SHD_NEUCR","","P07046","3-dehydroshikimate dehydratase (EC 
> 4.2.1.-) (DHS 
> dehydratase) (DHSase).","0","NEUCR") FKs (1,1011)
> ERROR:  fktaxon_bioentry referential integrity violation - 
> key referenced 
> from bioentry not found in taxon
> ---------------------------------------------------
> DBD::Pg::st execute failed: ERROR:  current transaction is 
> aborted, queries 
> ignored until end of transaction block at 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm
>  line 892, 
> <GEN0> line 29350.
> 
> 
> 
> 
> -------------------- WARNING ---------------------
> MSG: Could not store P23571:
> ------------- EXCEPTION  -------------
> MSG: error while executing statement in 
> Bio::DB::BioSQL::SeqFeatureAdaptor::find_by_unique_key: 
> ERROR:  current 
> transaction is aborted, queries ignored until end of 
> transaction block STACK 
> Bio::DB::BioSQL::BasePersistenceAdaptor::_find_by_unique_key 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:898
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::find_by_unique_key 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:809
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::create 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:192
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::store 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:238
> STACK Bio::DB::Persistent::PersistentObject::store 
> /home/ulrik/bioperl-db/Bio/DB/Persistent/PersistentObject.pm:266
> STACK Bio::DB::BioSQL::SeqAdaptor::store_children 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/SeqAdaptor.pm:246
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::create 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:203
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::store 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:238
> STACK Bio::DB::Persistent::PersistentObject::store 
> /home/ulrik/bioperl-db/Bio/DB/Persistent/PersistentObject.pm:266
> STACK (eval) load_seqdatabase.pl:424
> STACK toplevel load_seqdatabase.pl:423
> 
> 
> 
> 
> -------------------- WARNING ---------------------
> MSG: insert in Bio::DB::BioSQL::SeqFeatureAdaptor (driver) 
> failed, values 
> were ("","12") FKs (423,26,4)
> ERROR:  fkterm_seqfeature referential integrity violation - 
> key referenced 
> from seqfeature not found in term
> 
> 
> 
> 
> -------------------- WARNING ---------------------
> MSG: Could not store P30388:
> ------------- EXCEPTION  -------------
> MSG: Invalid species name 'subsp. gorilla'
> STACK Bio::Species::validate_species_name 
> /home/ulrik/bioperl-live/Bio/Species.pm:322
> 
> 
> 
> MSG: Could not store Q07000:
> ------------- EXCEPTION  -------------
> MSG: error while executing statement in 
> Bio::DB::BioSQL::SeqFeatureAdaptor::find_by_unique_key: 
> ERROR:  current 
> transaction is aborted, queries ignored until end of 
> transaction block STACK 
> Bio::DB::BioSQL::BasePersistenceAdaptor::_find_by_unique_key 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:898
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::find_by_unique_key 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:809
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::create 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:192
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::store 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:238
> STACK Bio::DB::Persistent::PersistentObject::store 
> /home/ulrik/bioperl-db/Bio/DB/Persistent/PersistentObject.pm:266
> STACK Bio::DB::BioSQL::SeqAdaptor::store_children 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/SeqAdaptor.pm:246
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::create 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:203
> STACK Bio::DB::BioSQL::BasePersistenceAdaptor::store 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm:238
> STACK Bio::DB::Persistent::PersistentObject::store 
> /home/ulrik/bioperl-db/Bio/DB/Persistent/PersistentObject.pm:266
> STACK (eval) load_seqdatabase.pl:424
> STACK toplevel load_seqdatabase.pl:423
> 
> --------------------------------------
> 
> ---------------------------------------------------
> DBD::Pg::st execute failed: ERROR:  fkdbxref_dblink 
> referential integrity 
> violation - key referenced from bioentry_dbxref not found in 
> dbxref at 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm
>  line 401, 
> <GEN0> line 18550.
> DBD::Pg::st execute failed: ERROR:  current transaction is 
> aborted, queries 
> ignored until end of transaction block at 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm
>  line 401, 
> <GEN0> line 18550.
> DBD::Pg::st execute failed: ERROR:  current transaction is 
> aborted, queries 
> ignored until end of transaction block at 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.pm
>  line 401, 
> <GEN0> line 18550.
> DBD::Pg::st execute failed: ERROR:  current transaction is 
> aborted, queries 
> ignored until end of transaction block at 
> /home/ulrik/bioperl-db/Bio/DB/BioSQL/BasePersistenceAdaptor.
> 
> 
> Thanks
> Ulrik
> 
> _________________________________________________________________
> Få nye ringetoner til mobilen 
> http://www.msn.dk/mobile/logoringetone/ringetoner/
> 
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at portal.open-bio.org 
> http://portal.open-> bio.org/mailman/listinfo/bioperl-l
> 



More information about the Bioperl-l mailing list