[Bioperl-l] Error while indexing whole genbank
guillermo
gcarbajosa at cnio.es
Tue Nov 14 10:39:41 UTC 2006
Hello,
I am trying to index the whole of genbank nucleotide (release number
156, October 15 2006), with the script (which uses Bio::Index::GenBank)
that is attached at the end of this message the process crashes with
this error message:
sdbm store returned -1, errno 9, key "BF460808" at
/usr/local/lib/perl5/site_perl/5.8.8/Bio/Index/Abstract.pm line 714,
<GenBank> line 164732819.
why could this be?
Thanks,
Guillermo
#!/usr/local/bin/perl -w
# Perl pragma to restrict unsafe constructs
use strict;
# Issue warnings about suspicious programming.
use warnings;
# Use the code module that contains BioPerl Services.
use Bio::Index::GenBank; # Use to index GenBank file
use Bio::SeqIO;
# be prepare for command-line options/arguments
use Getopt::Std;
sub help {
return<<"END_HELP";
Description: Make index from GenBank database
Usage:
createGenBankIndex.pl -d {index file} -g {GenBank database}
-d path and file name of index database
-g GenBank database path
END_HELP
}
BEGIN {
# Determines the options with values from program
use vars qw/$opt_d $opt_g/;
# these are switches taking an argument (a value)
my $switches = 'dg';
# Get the switches
getopt($switches);
# If the user does not write nothing, skip to help
unless (defined($opt_d) || defined($opt_g)){
print help;
exit 0;
}
}
########################################################################
#######
#
# DESCRIPTION: The next program creates an BioPerl index aside GenBank
database.
#
# INPUT (BY CONSOLE): - (-d) Path where the Uniprot index is going to
store.
# - (-g) Path where GenBank database is located
#
# OUTPUT: - O => The program has finished sucessfully
# - 1 => Some of database files has not founded
# - 2 => There was an error while the process was running
#
# AUTHOR: José Manuel RodrÃguez Carrasco -jmrc at cnb.uam.es- (INB-CNB)
########################################################################
#######
# Check if the path of GenBank database is able to read
unless (-f $opt_g && -r $opt_g) {
# The GenBank database has not been found
print "Error of createGenBankIndex program: The GenBank database has
not been found\n";
# Return an error
exit 1;
}
# Store the database paths
my @DBList = ($opt_g);
# Create new instance to index file. It is used the option
my $indexSW = Bio::Index::GenBank->new ('-filename' => $opt_d,
'-write_flag' => 1);
# Make the index
my $numFiles = $indexSW->make_index(@DBList);
# Check how many databases have been indexed
if ($numFiles == 1) {
# There has been not exist error.
print "\nThe creation of GenBank index has been executed
successfully\n";
exit 0;
} else {
# There has been exist an process error
print "\nThere was a problem while the creation of GenBank index was
running\n";
exit 2;
}
**NOTA DE CONFIDENCIALIDAD** Este correo electrónico, y en su caso los ficheros adjuntos, pueden contener información protegida para el uso exclusivo de su destinatario. Se prohíbe la distribución, reproducción o cualquier otro tipo de transmisión por parte de otra persona que no sea el destinatario. Si usted recibe por error este correo, se ruega comunicarlo al remitente y borrar el mensaje recibido.
**CONFIDENTIALITY NOTICE** This email communication and any attachments may contain confidential and privileged information for the sole use of the designated recipient named above. Distribution, reproduction or any other use of this transmission by any party other than the intended recipient is prohibited. If you are not the intended recipient please contact the sender and delete all copies.
More information about the Bioperl-l
mailing list