[Biopython-dev] [Bug 2616] BioSQL support for Psycopg2

bugzilla-daemon at portal.open-bio.org bugzilla-daemon at portal.open-bio.org
Wed Oct 15 09:14:47 UTC 2008


http://bugzilla.open-bio.org/show_bug.cgi?id=2616





------- Comment #3 from biopython-bugzilla at maubp.freeserve.co.uk  2008-10-15 05:14 EST -------
(In reply to comment #2)
> (In reply to comment #1)
> > Supporting psycopg2 sounds good :)
> > 
> > What version of Biopython do you have? 1.48 or CVS as there have
> > been some BioSQL changes recently (mostly to do with the taxonomy
> > tables).
> 
> 1.48
> 

Could you update to Biopython CVS please?  This now populates the
taxon/taxon_name tables differently when there is an NCBI taxon ID (with the
option to fetch lineages from Entrez).

Once you're running CVS, could you attach a patch to this bug.  That should
make it easier for me to look at this.

> > Which version of the BioSQL schema do you have?
> 
> biosql-1.0.1

Good.

> > Also your problem about the two tests failing when run via run_tests.py is
> > concerning.  What happens if you do this:
> > 
> > python run_tests.py -g test_BioSQL
> > python run_tests.py -g test_BioSQL_SeqIO
> > python run_tests.py test_BioSQL test_BioSQL_SeqIO
> > cvs diff output/test_BioSQL output/test_BioSQL_SeqIO
> 
> It really is broken when using run_tests.py, after running with the -g flag:
> $ cat output/test_BioSQL
> test_BioSQL
> Load SeqRecord objects into a BioSQL database. ... ERROR
> Get a list of all items in the database. ... ERROR
> Test retrieval of items using various ids. ... ERROR
> Make sure Seqs from BioSQL implement the right interface. ... ERROR
> Check SeqFeatures of a sequence. ... ERROR
> Make sure SeqRecords from BioSQL implement the right interface. ... ERROR
> Check that slices of sequences are retrieved properly. ... ERROR
> Make sure all records are correctly loaded. ... ERROR
> Indepth check that SeqFeatures are transmitted through the db. ... ERROR
> etc...
> 
> Probably not the solution we're looking for...

This was really a diagnostic step, rather than a solution.

> The problem is that run_test.py is not picking up the psycopg2 adapter and is
> deferring to the generic adapter, consequently it throws on "InternalError:
> DROP DATABASE cannot run inside a transaction block". Why that's the case when
> individually the test work OK is something I tried to track this down but just
> couldn't figure it...

You must have edited test_setup_BioSQL.py correctly, so that's probably not the
problem.

Where did you install psycopg2?  Using run_tests.py does some magic with the
python path to make sure the local copy of Biopython you've just built is used,
rather than any existing system installation of Biopython.  Perhaps this is
preventing python from finding psycopg2 somehow.  You don't have any test files
present called psycopg2.py do you?

Alternatively, maybe there is something wrong with your adaptor code - but
presumably this works outside the test suite?


-- 
Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the Biopython-dev mailing list