#27762: Concurrency Safety Documentation
-------------------------------+--------------------------------------
     Reporter:  Kevin Mahoney  |                    Owner:  nobody
         Type:  Uncategorized  |                   Status:  new
    Component:  Documentation  |                  Version:  1.10
     Severity:  Normal         |               Resolution:
     Keywords:                 |             Triage Stage:  Unreviewed
    Has patch:  0              |      Needs documentation:  0
  Needs tests:  0              |  Patch needs improvement:  0
Easy pickings:  0              |                    UI/UX:  0
-------------------------------+--------------------------------------

Comment (by Aymeric Augustin):

 The tutorial is kept naive on purpose. It contains a note about the non-
 atomic increment (search for "the code for our vote() view does have a
 small problem" in the page). Where is the second bug?

 There are two categories of bugs in the blog post:

 - Bugs related to ORM instances not being singletons: most developers seem
 to understand these and they don't appear to be too common in real-world
 code;
 - Bugs related to concurrency or incorrect assumptions about transactions
 isolation: these are hard and I'm not sure how well we can cover them in
 Django's documentation, but there's certainly some room for improvement.
 If I remember correctly, the documentation of transactions describes the
 toolbox but not the problem it solves.

 Finally, the bigger concern in this area (usually) is that the admin isn't
 safe against concurrent modifications: if user A loads a change page,
 makes changes, then saves, any changes made by user B to the same object
 between the time user A loaded the change page and saved the object are
 overwritten. There's a ticket for that.

--
Ticket URL: <https://code.djangoproject.com/ticket/27762#comment:1>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/066.f5d2a9af154d55bb0795708ae07b2657%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to