My work on transaction management is now ready for review: https://github.com/django/django/pull/873
To sum up, the main improvements over the current implementation are: 1) A better API for transactions - Simple: just one function covers most of the use cases - Correct: it actually guarantees atomicity - Pythonic: it's fully nestable 2) No implicit transactions - More predictable - Better performance - Eliminates dangling transactions ("idle in transaction") - even in long running processes 3) More maintainable - More documentation - Less code, at least from 1.8 onwards - Closer to the database — avoids problems with the adapters The main concern is backwards-compatibility. It was discussed at length in the previous thread. I acknowledge the consequences, and I documented them. Here's what you should know before starting a review. I've rewritten history heavily to make the branch as reviewable as possible. I refactored away the old transaction management code in small steps to avoid introducing unintentional backwards-incompatibilities. I suggest reviewing the code changeset by changeset. Some commits make very large edits to the docs and are impossible to review. I recommend reading only the final version of the docs. I will avoid force-pushing from now on. Please checkout my branch and test it! Barring unexpected problems and last minute vetoes, I plan to merge this branch when another core dev reviews it thoroughly and accepts it, or before the PyCon sprints (in 10 days), whichever comes first. Let me know if you'd like more time to review it. -- Aymeric. -- You received this message because you are subscribed to the Google Groups "Django developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-developers+unsubscr...@googlegroups.com. To post to this group, send email to django-developers@googlegroups.com. Visit this group at http://groups.google.com/group/django-developers?hl=en. For more options, visit https://groups.google.com/groups/opt_out.