[Bioperl-l] bioperl-db woes
Stefan Kirov
stefan.kirov at bms.com
Thu Apr 17 16:40:14 UTC 2008
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
More information about the Bioperl-l
mailing list