[Bioperl-l] Problems when trying to persist a sequence in my BioSQL database using, BioPerl

Chris Fields cjfields at uiuc.edu
Thu Jun 26 12:44:52 UTC 2008


We could change that in Bio::Species (maybe with DESTROY), but  
Scalar::Util is also used several other BioPerl modules and is used in  
a few BioPerl dependencies, I believe.

cjfields:bioperl-live cjfields$ ack Scalar::Util

Bio/DB/SeqFeature/Store.pm
231:use Scalar::Util 'blessed';

Bio/FeatureIO/bed.pm
71:use Scalar::Util qw(looks_like_number);

Bio/Map/Position.pm
89:use Scalar::Util qw(looks_like_number);

Bio/Map/PositionI.pm
81:use Scalar::Util qw(looks_like_number);

Bio/Map/Relative.pm
89:use Scalar::Util qw(looks_like_number);

Bio/SeqFeature/Gene/GeneStructure.pm
68:    eval "use Scalar::Util qw(weaken);";

Bio/Species.pm
91:use Scalar::Util qw(weaken isweak);

Bio/Tree/Node.pm
76:use Scalar::Util qw(weaken isweak);

chris

On Jun 25, 2008, at 5:07 PM, Hilmar Lapp wrote:

> Hi Gabrielle,
>
> (note that I have changed the mailing list to bioperl - whoever  
> replies please cut biosql from the cc list, assuming that this  
> indeed isn't BioSQL's fault)
>
> given the error message below, Bio::SeqIO::genbank can be found, but  
> it fails to load because it requires Bio::Species, which in turn  
> imports support for weak references from Scalar::Util. The last step  
> fails, causing loading Bio::Species to fail, which in turn causes  
> Bio::SeqIO::genbank to fail to load.
>
> The real question is why your version of Perl doesn't seem to have  
> support for weak references (the reason for Scalar::Util failing to  
> load). Could you give details on your OS version and your version of  
> Perl (output of 'perl -V').
>
> The question for BioPerl is whether there is a fall-back mechanism  
> we might want to support if weak references aren't supported, rather  
> than rendering the genbank parser unusable. Sendu or Chris - any  
> thoughts on this?
>
> 	-hilmar
>
> On Jun 24, 2008, at 10:49 AM, Gabrielle Doan wrote:
>
>> Hi all,
>>
>> I am new to BioPerl and BioSQL so please excuse me if my question  
>> is a bit simple. I followed the installation files in the current  
>> version of BioPerl very strictly (I used the Bioperl 1.5.2,  
>> Developer Release from the bioperl website). After successful  
>> installation I tried to persist a genbank file in my BioSQL  
>> database, which runs on a database server and is accessible using  
>> the mysql command shell. When using bioperl I receive the following  
>> error message:
>>
>> ================
>>
>> $ /usr/bin/bp_load_seqdatabase.pl --host radb --dbname bioseqdb -- 
>> dbuser myuser --dbpass mypasswd --namespace GenBank /home/doan/db- 
>> data/ref_chr1.gbk
>> Loading /local/doan/db-daten/ref_chr1.gbk ...
>> Bio::SeqIO: genbank cannot be found
>> Exception ------------- EXCEPTION: Bio::Root::Exception -------------
>> MSG: Failed to load module Bio::SeqIO::genbank. Weak references are  
>> not implemented in the version of perl at /usr/lib/perl5/site_perl/ 
>> 5.8.8/Bio/Species.pm line 91
>> BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/ 
>> Bio/Species.pm line 91.
>> Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/Bio/ 
>> SeqIO/genbank.pm line 172.
>> BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/ 
>> Bio/SeqIO/genbank.pm line 172.
>> Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/Bio/ 
>> Root/Root.pm line 425.
>>
>> STACK: Error::throw
>> STACK: Bio::Root::Root::throw /usr/lib/perl5/site_perl/5.8.8/Bio/ 
>> Root/Root.pm:359
>> STACK: Bio::Root::Root::_load_module /usr/lib/perl5/site_perl/5.8.8/ 
>> Bio/Root/Root.pm:427
>> STACK: Bio::SeqIO::_load_format_module /usr/lib/perl5/site_perl/ 
>> 5.8.8/Bio/SeqIO.pm:555
>> STACK: Bio::SeqIO::new /usr/lib/perl5/site_perl/5.8.8/Bio/SeqIO.pm: 
>> 376
>> STACK: /usr/bin/bp_load_seqdatabase.pl:541
>> -----------------------------------------------------------
>>
>> For more information about the SeqIO system please see the SeqIO  
>> docs.
>> This includes ways of checking for formats at compile time, not run  
>> time
>> Can't call method "next_seq" on an undefined value at /usr/bin/ 
>> bp_load_seqdatabase.pl line 565.
>>
>> ================
>>
>> Unfortunately, even Google does not provide any hints when  
>> searching for the particular message. It seems that for some reason  
>> the path to the Bio::SeqIO::genbank module cannot be found. I am  
>> greateful for any hint!
>>
>> Cheers,
>> Gabrielle
>>
>> _______________________________________________
>> BioSQL-l mailing list
>> BioSQL-l at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/biosql-l
>
> -- 
> ===========================================================
> : Hilmar Lapp  -:-  Durham, NC  -:-  hlapp at gmx dot net :
> ===========================================================
>
>
>
> _______________________________________________
> 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. Marie-Claude Hofmann
Institute for Genomic Biology/College of Veterinary Medicine
University of Illinois Urbana-Champaign







More information about the Bioperl-l mailing list