﻿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
16682	KeyboardInterrupt not handled properly in transaction aborting	Malcolm Tredinnick	nobody	"Ticket #6928 was reopened to report this, so I (Malcolm) am moving it to a new ticket, since it's a separate issue. Following text is from comment:7 on that ticket:

--- 

After [14288] transaction.commit_on_success does not handle `KeyboardInterrupt`.

Problem in `django.db.transaction.Transaction.__exit__` and default `exiting` function.

{{{#!python
    def __exit__(self, exc_type, exc_value, traceback):
        self.exiting(exc_value, self.using)
}}}

`exc_value` is None after `KeyboardInterrupt` has been throwed, only `exc_type` and `traceback` has value. 
But if raise `KeyboardInterrupt` manualy from code it's work ok.

Possible solution: use `exc_type` and `exc_value` in `exiting` function

I use python 2.6.6"	Bug	closed	Database layer (models, ORM)	1.3	Normal	fixed	1.11	Mariusz Felisiak	Accepted	0	0	0	0	0	0
