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 | | |
| 5 | I'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 | ------------- |