﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
17760	connection.features.supports_transactions is None	Craig de Stigter	nobody	"Background: To speed up our tests we have a custom nose-based test runner which *doesn't* drop/create the database. It shouldn't need to when tests are run in a transaction. This prevents us having to load fixtures etc, as most of the test data lives permanently in the database.

However after upgrading to django 1.3, `connection.features.supports_transactions` is always None, causing our tests to use TRUNCATEs instead of transactions.

This appears to be because connection.features.confirm() is only called from create_test_db(): https://code.djangoproject.com/browser/django/tags/releases/1.3/django/db/backends/creation.py#L357

I'd argue that's the wrong place to do it. It should probably happen when the connection is first initialised, or at least in `TestCase._pre_setup()`

This has caused issues before: #16622 #16885 (possibly others)

(To be fair it shouldn't really be on connection.features at all, since it's only set during testing and is otherwise always None)

Tested with 1.3.1 and master."	Bug	closed	Database layer (models, ORM)	1.3	Normal	fixed			Ready for checkin	1	0	0	0	0	0
