[Biopython-dev] BioSQL bugs

Brad Chapman chapmanb at uga.edu
Tue Mar 30 19:31:37 EST 2004

Hi Mark;

[I ask how we can make tests work without autocommit]

> I think bioperl makes use of functions (see the biosqldb-pg.sql). I was 
> thinking about adding some of these function calls to the DBUtils 
> section to speed up the transactions. Removing some of the constraints 
> will increase the speed as the database grows. This code works fine for 
> small sets, but it quickly slows down (probably because of the checks).

That would be great -- honestly, I am not a database expert at all
(as you can probably tell from my mails). This seems like a good
place to start. I'd definitely appreciate more contributions along
this line from you if you'd be willing to do more work on it. 

[I'm confused about the taxon table as well]
> These values are needed for nested-set representation 
> <http://www.oreillynet.com/pub/a/network/2002/11/27/bioconf.html?page=1>. 
> They are used to quickly limit a branch of a tree. Selecting on the 
> values >= the left and <= the right gives you all the elements under 
> that part of the tree. I don't think it would be easy to add a new 
> element to the tree with out rebuilding the whole representation. 
> Therefore, I just skip it and put in a null (and print out that it 
> wasn't known). This needs to be fixed in the source of the data.

Thanks for the link. That makes good sense now -- it seems as if the
intent is to have the taxonomy information pre-loaded from taxon
tables, and then linking to the taxon table when loading records.

I agree with you -- I think the best way to handle it is to add
functionality (maybe to a mixin class that DBServer can derive from)
to load taxon table information into a database. Then, if this taxon
information exists link to it, otherwise add nulls as you suggest.

Thanks for the explanations!

More information about the Biopython-dev mailing list