[Bioperl-l] bioperl-db woes
Chris Fields
cjfields at uiuc.edu
Thu Apr 17 17:06:39 UTC 2008
Stefan,
'get_dbxrefs' was introduced in bioperl-live a while back during the
feature/annotation rollback detailed here:
http://www.bioperl.org/wiki/Feature_Annotation_rollback
I still think this is an interfering old bioperl (and maybe bioperl-
db) installation causing the problems; I had similar issues at one
point and had to find and remove the old installation. It might be
worth (1) checking 'perldoc -l Bio::Root::Root', which will give the
location of the Bio::Root::Root in lib path being used, and (2) using
'./Build install uninst=1' to remove any old bioperl/bioperl-db
installations.
chris
On Apr 17, 2008, at 11:40 AM, Stefan Kirov wrote:
> Hilmar,
> sorry, I missed the part after the stack trace... In any case this
> is still problem for me after I updated bioperl-live.
> I see this with a number of other tests:
> t/04swiss.........ok 3/52Can't locate object method "get_dbxrefs"
> via package "Bio::Ontology::Term" at /home/kirovs/bioperl-db/blib/
> lib/Bio/DB/Persistent/PersistentObject.pm line 552, <GEN0> line 78.
> t/04swiss.........dubious
> Test returned status 2 (wstat 512, 0x200)
> DIED. FAILED tests 6-52
> Failed 47/52 tests, 9.62% okay
> t/05seqfeature....ok 4/48Can't locate object method "get_dbxrefs"
> via package "Bio::Ontology::Term" at /home/kirovs/bioperl-db/blib/
> lib/Bio/DB/Persistent/PersistentObject.pm line 552, <GEN0> line 72.
> t/05seqfeature....FAILED tests 9-48
> Failed 40/48 tests, 16.67% okay
> t/06comment.......ok
> t/07dblink........ok
> t/08genbank.......ok
> t/09fuzzy2........ok
> t/10ensembl.......ok 1/15Can't locate object method "get_dbxrefs"
> via package "Bio::Ontology::Term" at /home/kirovs/bioperl-db/blib/
> lib/Bio/DB/Persistent/PersistentObject.pm line 552, <GEN0> line 1420.
> t/10ensembl.......dubious
> Test returned status 2 (wstat 512, 0x200)
> DIED. FAILED tests 3-15
> Failed 13/15 tests, 13.33% okay
> t/11locuslink.....ok 4/110Can't locate object method "get_dbxrefs"
> via package "Bio::Annotation::OntologyTerm" at /home/kirovs/bioperl-
> db/blib/lib/Bio/DB/Persistent/PersistentObject.pm line 552, <GEN0>
> line 1.
> t/11locuslink.....dubious
> Test returned status 2 (wstat 512, 0x200)
> DIED. FAILED tests 5-110
> Failed 106/110 tests, 3.64% okay
> t/12ontology......ok 1/738Can't locate object method "get_dbxrefs"
> via package "Bio::Ontology::GOterm" at /home/kirovs/bioperl-db/blib/
> lib/Bio/DB/Persistent/PersistentObject.pm line 552, <GEN0> line 98.
> t/12ontology......dubious
> Test returned status 255 (wstat 65280, 0xff00)
> DIED. FAILED tests 5-738
> Failed 734/738 tests, 0.54% okay
> t/13remove........ok 2/59Can't locate object method "get_dbxrefs"
> via package "Bio::Ontology::Term" at /home/kirovs/bioperl-db/blib/
> lib/Bio/DB/Persistent/PersistentObject.pm line 552, <GEN0> line 145.
> t/13remove........FAILED tests 11-59
> Failed 49/59 tests, 16.95% okay
> t/14query.........ok
> t/15cluster.......ok 3/160Can't locate object method "get_dbxrefs"
> via package "Bio::Ontology::Term" at /home/kirovs/bioperl-db/blib/
> lib/Bio/DB/Persistent/PersistentObject.pm line 552, <GEN0> line 1.
> t/15cluster.......dubious
> Test returned status 2 (wstat 512, 0x200)
> DIED. FAILED tests 6-160
> Failed 155/160 tests, 3.12% okay
> t/16obda..........ok
>
> On Thu, 17 Apr 2008, Chris Fields wrote:
>
>>
>> On Apr 17, 2008, at 9:47 AM, Hilmar Lapp wrote:
>>
>>> On Apr 17, 2008, at 10:18 AM, Stefan Kirov wrote:
>>>> In any case I debugged and tracked that down to the RichSeq
>>>> adaptor module missing.
>>> That almost can't be the problem. Every Bio::Seq::RichSeq is-a
>>> Bio::Seq and a SeqAdaptor is present.
>>> I'm afraid it gets stuck somewhere else and frankly I didn't see
>>> the RichSeqAdaptor failing to load in your stack trace:
>>>
>>>> ------------- EXCEPTION: Bio::Root::Exception -------------
>>>>
>>>> MSG: Annotation of class Bio::Annotation::Collection not
>>>> type-mapped. Internal error?
>>>> STACK: Error::throw
>>>> STACK: Bio::Root::Root::throw
>>>> /home/kirovs/bioperl-live/Bio/Root/Root.pm:357
>>>> STACK:
>>>> Bio::DB::BioSQL::AnnotationCollectionAdaptor::_annotation_map_key
>>>> Bio/DB/BioSQL/AnnotationCollectionAdaptor.pm:695
>>>> STACK:
>>>> Bio::DB::BioSQL::AnnotationCollectionAdaptor::store_children
>>>> Bio/DB/BioSQL/AnnotationCollectionAdaptor.pm:204
>>>> STACK: Bio::DB::BioSQL::BasePersistenceAdaptor::create
>>>> Bio/DB/BioSQL/BasePersistenceAdaptor.pm:214
>>>> STACK: Bio::DB::BioSQL::BasePersistenceAdaptor::store
>>>> Bio/DB/BioSQL/BasePersistenceAdaptor.pm:251
>>>> STACK: Bio::DB::Persistent::PersistentObject::store
>>>> Bio/DB/Persistent/PersistentObject.pm:271
>>>> STACK: Bio::DB::BioSQL::SeqAdaptor::store_children
>>>> Bio/DB/BioSQL/SeqAdaptor.pm:224
>>>> STACK: Bio::DB::BioSQL::BasePersistenceAdaptor::create
>>>> Bio/DB/BioSQL/BasePersistenceAdaptor.pm:214
>>>> STACK: Bio::DB::Persistent::PersistentObject::create
>>>> Bio/DB/Persistent/PersistentObject.pm:244
>>>> STACK: t/04swiss.t:36
>>>> -----------------------------------------------------------
>>> What that tells me is that when bioperl-db tries to store the
>>> annotation bundle of the (SwissProt) sequence, one of the
>>> annotations that it encounters is of type
>>> Bio::Annotation::Collection. At present bioperl-db doesn't know
>>> what to do with it; i.e., bioperl-db can't yet handle hierarchical
>>> annotation collections (collections within collections).
>>> I believe this is due to recent changes in how the GN line is
>>> parsed in BioPerl - Chris does this ring the right bell? I thought
>>> though you had built in a method would allow flattening out
>>
>> This appears to be using an older bioperl-live checkout, one where
>> Heikki changed GN parsing to use a nested Annotation::Collection.
>> I reverted that back in a later commit to svn specifically b/c of
>> bioperl-db problems. bioperl-live's swiss.pm now uses a new
>> subclass of Bio::Annotation::SimpleValue (Bio::Annotation::TagTree)
>> that represents nested values via Data::Stag's itext output (we can
>> change that to alternatives if needed).
>>
>> Here are the last few relevant revisions in bioperl-live's main
>> trunk (mine is the latest):
>>
>> ------------------------------------------------------------------------
>> r14562 | cjfields | 2008-02-28 08:30:05 -0600 (Thu, 28 Feb 2008) |
>> 1 line
>>
>> bug 1825: updating swiss.pm/tests to try out TagTree (passes all
>> tests). Need to update Handler.t and related modules still...
>> ------------------------------------------------------------------------
>> r14541 | heikki | 2008-02-25 00:10:48 -0600 (Mon, 25 Feb 2008) | 1
>> line
>>
>> documentation for the GN line parsing and management
>> ------------------------------------------------------------------------
>> r14538 | heikki | 2008-02-23 08:48:23 -0600 (Sat, 23 Feb 2008) | 1
>> line
>>
>> GN (Gene Name) line parsing rewrite. Breaks backward compatibility.
>> Can now deal with >1 gene per entry and four categories of names
>> per gene. Parses old style syntax (...OR ... OR ... ) into one gene
>> name and synonyms for each gene. Docs to follow.
>>
>> ....
>>
>> I just updated all code from dev and reran bioperl-db tests w/o
>> problems. Maybe someone else could do the same to see what happens?
>>
>>> It's worth noting that BioSQL itself can't really represent nested
>>> annotation collections other than by using ontology terms and
>>> their hierarchy, which at present I think isn't really
>>> appropriate, but I have to think through the issue more. In other
>>> words, in BioSQL you can't directly tie together a bunch of
>>> qualifier value pairs into a "bag" and then nest this bag within
>>> another. The way to make this work with the current schema is to
>>> flatten out the nesting.
>>>
>>> -hilmar
>>> --
>>> ===========================================================
>>> : Hilmar Lapp -:- Durham, NC -:- hlapp at gmx dot net :
>>> ===========================================================
>>
>> Might be worth looking into for a future BioSQL release, but we
>> have a decent workaround in place for now, as long as it works
>> cross-platform and cross-RDB.
>>
>> chris
>>
>> _______________________________________________
>> Bioperl-l mailing list
>> Bioperl-l at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
Christopher Fields
Postdoctoral Researcher
Lab of Dr. Robert Switzer
Dept of Biochemistry
University of Illinois Urbana-Champaign
More information about the Bioperl-l
mailing list