#16682: KeyboardInterrupt not handled properly in transaction aborting
-------------------------------------+-------------------------------------
Reporter: mtredinnick | Owner: nobody
Type: Bug | Status: new
Milestone: | Component: Database
Version: 1.3 | layer (models, ORM)
Keywords: | Severity: Normal
Has patch: 0 | Triage Stage:
Needs tests: 0 | Unreviewed
Easy pickings: 0 | Needs documentation: 0
| Patch needs improvement: 0
| UI/UX: 0
-------------------------------------+-------------------------------------
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
--
Ticket URL: <https://code.djangoproject.com/ticket/16682>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" 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-updates?hl=en.