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.


Reply via email to