On Thu, Nov 26, 2009 at 5:44 PM, Ian Kelly <[email protected]> wrote:
> On Thu, Nov 26, 2009 at 8:38 AM, Russell Keith-Magee > <[email protected]> wrote: > > Yes - this does help. The confirms my suspicion - the problem is that > > the fixture loaded in FixtureTestCase.test_fixture_loading isn't being > > cleared before running the tests in QueryTestCase. > > > > The annoying thing is that I don't see this problem on any other > > database, so there is something specific about transaction rollback on > > Oracle. I can't see anything in that code that is should be > > Oracle-specific behavior. > > > > The magic code is in _fixture_teardown(), starting at line 487 of > > django/tests/testcases.py. That method *should* be resetting the > > database at the end of multiple_database.FixtureTestCase, but > > evidently it isn't. Either the transaction rollback code isn't getting > > invoked, or it is getting invoked but not behaving as expected. > > > > Any debugging assistance you can provide here would be most welcome. > > > > Yours > > Russ Magee %-) > > It sounds like you're running into another case of #11101. The basic > problem is that loading fixtures involves resetting sequences, which > requires running DDL, which causes an implicit commit. > > > > > That must be it. Any DDL operation in Oracle does implicit commit before actually execting DDL. Very hard to get around since it's how DDL works in Oracle. -- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.
