Code

Changes between Initial Version and Version 1 of Ticket #16622, comment 10


Ignore:
Timestamp:
08/14/11 12:14:07 (3 years ago)
Author:
valhallasw
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #16622, comment 10

    initial v1  
    11tl;dr: it was our fault. sorry for wasting your time :-( 
     2------------- 
     3In the end, it was caused because we used a buggy way of adding a database programmatically (i.e. not using the configuration screen) to be able to test on different data sets (this is useful, for instance, for testing statistical functions). This method did not call [https://code.djangoproject.com/browser/django/tags/releases/1.3/django/db/backends/__init__.py#L335 features.confirm](). This, in turn means the testing framework got `None` when it asked for `features.supports_transactions`, which returned None (instead of True). This was intepreted as 'it's not True', and thus transactions were not used. 
    24 
    3 In the end, it was caused because we used a buggy way of adding a database programmatically (i.e. not using the configuration screen) to be able to test on different data sets (this is useful, for instance, for testing statistical functions). This method did not call [https://code.djangoproject.com/browser/django/tags/releases/1.3/django/db/backends/__init__.py#L335 features.confirm](). This, in turn means the testing framework got `None` when it asked for `features.supports_transactions` . 
    4 which returned None (instead of True). This was intepreted as 'it's not True', and thus transactions were not used. 
    5  
    6 I'm not quite sure how sensible returning None is: IMO is would make more sense to raise an Exception if no data is available, or calling confrm() to actually /get/ the data (although creating and deleting a table while in a query might not be the most sensible thing to do). 
    7  
     5I'm not quite sure how sensible returning None is, though: IMO it would make more sense to raise an Exception if no data is available, or calling confrm() to actually /get/ the data (although creating and deleting a table while in a query might not be the most sensible thing to do). 
     6------------- 
    87To give you a full log of my debugging: 
    98