Hi there.  

We are struggling with a bug which I am not sure how to track down
further.  This may not be related to sqlobject, but sqlobject is where
the trail starts.

We have a set of tests which ran fine previously - when separate test
runs used to happen in separate processes. Now, however, we run more
test runs together in the same process and get a breakage that does not
make sense.  Any pointers as to how we should hunt this thing down would
be appreciated:

The breakage happens in sqlobject's col.py, in method to_python of
DecimalValidator.  The method gets called with a value which is an
instance of a decimal.Decimal class, yet the code gets through to the
try: statement right at the end of the function.  (It should have been
caught earlier.)  The reason it is not caught earlier is because (from
pdb):

(Pdb) value.__class__
<class 'decimal.Decimal'>

And yet:
(Pdb) value.__class__ is Decimal
False

Seems like the imported Decimal and the Decimal of which value is an
instance are not the same thing.

Specifically, the imported Decimal seems to the the "right" one, since:
(Pdb) Decimal is getattr(sys.modules['decimal'],'Decimal')
True

Where does the Decimal class come from, of which value is an instance?
Does sqlobject do anything funny when constructing these?  Or should I
look beyond sqlobject?  

(We're using postgresql 8.3 and psycopg2 also.)

Thanks
- Iwan Vosloo


------------------------------------------------------------------------------
_______________________________________________
sqlobject-discuss mailing list
sqlobject-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss

Reply via email to