[Bioperl-l] swissprot giving no id exception

Guoneng Zhong Guoneng.Zhong@med.nyu.edu
Mon, 15 Apr 2002 10:41:57 -0400


Oh right, I looked at your code earlier and I see that it is -verbose 
and I put in verbose.  I replaced the stream method with accessing each 
id at a time.  That way worked with no problem, so it can't be the 
accession numbers.  So it's working now, but it didn't work using the 
following code:

	while(@subarr = splice @ids,0,$MAX_IDS_SENT){
		print "Starting a another batch...\n";
		my $sp = new Bio::DB::SwissProt;
		my $sequenceIO = $sp->get_Stream_by_acc(\@ids);
		my $seqObj = 1;
		while($seqObj){
			eval{
				$seqObj = $sequenceIO->next_seq();
				if($seqObj){
					push @seqs,$seqObj;
					print $seqObj->primary_id."\n";
				}
			};
			print "uh oh:\n$@\n" if($@);
		}
	}


Do you see anything wrong?  The exception is thrown only at the last 
round of the outer while loop when the remaining ids were sent to 
creating the stream.  There were 70 ids to start with, and 25 were sent 
each time (apparently this DB object only allows something like 50 ids 
sent at a time).

G