Commit Graph

259 Commits

Author SHA1 Message Date
Aymeric Augustin 5d8342f321 Proof-read and adjusted the transactions docs. 2013-03-13 15:17:41 +01:00
Aymeric Augustin 83a416f5e7 Made atomic usable when autocommit is off.
Thanks Anssi for haggling until I implemented this.

This change alleviates the need for atomic_if_autocommit. When
autocommit is disabled for a database, atomic will simply create and
release savepoints, and not commit anything. This honors the contract of
not doing any transaction management.

This change also makes the hack to allow using atomic within the legacy
transaction management redundant.

None of the above will work with SQLite, because of a flaw in the design
of the sqlite3 library. This is a known limitation that cannot be lifted
without unacceptable side effects eg. triggering arbitrary commits.
2013-03-13 15:17:40 +01:00
Aymeric Augustin e654180ce2 Improved the API of set_autocommit. 2013-03-11 15:10:58 +01:00
Aymeric Augustin 4dbd1b2dd8 Used commit_on_success_unless_managed to make ORM operations atomic. 2013-03-11 15:05:05 +01:00
Aymeric Augustin 107d9b1d97 Added an option to disable the creation of savepoints in atomic. 2013-03-11 15:05:04 +01:00
Aymeric Augustin 189fb4e294 Added a note about long-running processes.
There isn't much else to say, really.
2013-03-11 15:05:04 +01:00
Aymeric Augustin 17cf29920b Added an explanation of transactions and grouped low-level APIs. 2013-03-11 15:05:02 +01:00
Aymeric Augustin ffe41591e7 Updated the documentation for savepoints.
Apparently django.db.transaction used to be an object.
2013-03-11 15:04:10 +01:00
Aymeric Augustin ac37ed21b3 Deprecated TransactionMiddleware and TRANSACTIONS_MANAGED.
Replaced them with per-database options, for proper multi-db support.

Also toned down the recommendation to tie transactions to HTTP requests.
Thanks Jeremy for sharing his experience.
2013-03-11 15:04:05 +01:00
Aymeric Augustin 7c46c8d5f2 Added some assertions to enforce the atomicity of atomic. 2013-03-11 14:48:55 +01:00
Aymeric Augustin d7bc4fbc94 Implemented an 'atomic' decorator and context manager.
Currently it only works in autocommit mode.

Based on @xact by Christophe Pettus.
2013-03-11 14:48:55 +01:00
Aymeric Augustin 4b31a6a9e6 Added support for savepoints in SQLite.
Technically speaking they aren't usable yet.
2013-03-11 14:48:55 +01:00
Aymeric Augustin 5e27debc5c Enabled database-level autocommit for all backends.
This is mostly a documentation change.

It has the same backwards-incompatibility consequences as those
described for PostgreSQL in a previous commit.
2013-03-11 14:48:54 +01:00
Aymeric Augustin f515619494 Added an API to control database-level autocommit. 2013-03-11 14:48:53 +01:00
Loic Bistuer 6983a1a540 Fixed #15363 -- Renamed and normalized to `get_queryset` the methods that return a QuerySet. 2013-03-08 10:11:45 -05:00
Aymeric Augustin 97afc49bb0 Removed unnecessary imports. 2013-03-03 16:07:38 +01:00
Claude Paroz b0ba21db07 Fixed #19926 -- Fixed a link to code example in queries docs
Thanks Randy Salvo for the report.
2013-02-27 21:30:54 +01:00
Tim Graham cf890c110e Added an example of "default" database dictionary left blank; refs #19775.
Thanks wsmith323 for the patch.
2013-02-23 16:01:43 -05:00
Tim Graham 31bcb102b2 Fixed #19775 - Clarified requirements of the "default" database.
Thanks monkut for the report and wsmith323 for the patch.
2013-02-23 15:21:35 -05:00
Tim Graham 64d0f89ab1 Fixed #19717 - Removed mentions of "root QuerySet" in docs.
Thanks julien.aubert.mail@ for the report and James Pic for the patch.
2013-02-18 09:35:22 -05:00
Ramiro Morales 0560bfb705 Mention backward relationships in aggregate docs.
Thanks Anssi and Marc Tamlyn for reviewing.

Fixes #19803.
2013-02-12 09:36:29 -03:00
Tim Graham 43efefae69 Fixed #19756 - Corrected a ManyToMany example and added some links and markup. 2013-02-07 06:12:25 -05:00
Tim Graham 9b5f64cc6e Fixed #19516 - Fixed remaining broken links.
Added -n to sphinx builds to catch issues going forward.
2013-01-02 18:32:57 -05:00
Aymeric Augustin 7ee7599ab3 Removed versionadded/changed annotations dating back to 1.4. 2012-12-29 21:59:08 +01:00
Aymeric Augustin f27a4ee327 Removed django.contrib.localflavor.
Each localflavor lives on as a separate app.
2012-12-29 21:59:06 +01:00
Tim Graham 067505ad19 Fixed broken links, round 4. refs #19516 2012-12-29 15:54:33 -05:00
Preston Holmes 11ded967c4 Fixed #19498 -- refactored auth documentation
The auth doc was a single page which had grown unwieldy.
This refactor split and grouped the content into sub-topics.
Additional corrections and cleanups were made along the way.
2012-12-28 11:06:12 -08:00
Tim Graham b3a8c9dab8 Fixed broken links, round 3. refs #19516 2012-12-26 19:07:22 -05:00
Tim Graham 52a2588df6 Fixed #19506 - Remove 'mysite' prefix in model example.
Thanks Mike O'Connor for the report.
2012-12-21 15:52:06 -05:00
Tim Graham 31f49f1396 Fixed #19442 - Clarified that raw SQL must be committed.
Thanks startup.canada for the suggestion.
2012-12-18 08:10:12 -05:00
Russell Keith-Magee 1b646e656e Fixed #19384 -- Documented the behavior of custom managers on abstract models.
This documents the behavior introduced by cc337a74, which is BACKWARDS
INCOMPATIBLE for any attempt to invoke a method on a manager using the
abstract class as the calling class (e.g., AbstractBase.objects.do_something())

Thanks to mhsparks for the report.
2012-12-15 22:44:46 +08:00
Aymeric Augustin a001f3c31e Fixed #2304 -- Documented TRANSACTIONS_MANAGED. 2012-12-14 21:15:48 +01:00
Tim Graham ba2adc9c05 Fixed #19352 - Added an example in the QuerySet docs.
Thanks colinkeenan for the suggestion.
2012-11-27 18:21:55 -05:00
Aymeric Augustin 5c81e9de0f Negligible style fix in docs. 2012-11-23 20:40:42 +01:00
WoLpH eabb44417c changed if statement to a slightly cleaner/less confusing variant 2012-11-22 22:29:39 +01:00
Aymeric Augustin a026e480da Fixed #16039 -- Made post_syncdb handlers multi-db aware.
Also reverted 8fb7a90026. Refs #17055.
2012-11-22 20:53:59 +01:00
Tim Graham 620e0bba49 Fixed #19154 - Noted commit_manually requires commit/rollback for reads
Thanks als for the report.
2012-11-06 17:47:10 -05:00
Tim Graham feaf9f279a Fixed #15361 - Documented performance considerations for QuerySet.get()
Thanks mmcnickle for the patch.
2012-11-02 17:58:24 -04:00
Florian Apolloner b7d81715dc Removed a redundant colon in the query docs.
Thanks to Berker Peksag for the patch.
2012-10-27 21:21:33 +02:00
Tim Graham 5fb22329a1 Merge pull request #422 from elvard/18996
Fixed #18996 - Clarified overriden model methods not called on bulk operations
2012-10-12 16:45:45 -07:00
Tim Graham 6b56aeec6e Merge pull request #428 from donspaulding/patch-1
Removed extra indent in docs/topics/db/queries.txt
2012-10-11 16:19:32 -07:00
Tim Graham dd0cbc6bdc Fixed #16588 - Warned about field names that conflict with the model API 2012-10-11 18:05:12 -04:00
Anssi Kääriäinen b625e8272b Moved F() '&' and '|' to .bitand() and .bitor()
Done for consistency with Q() expressions and QuerySet combining. This
will allow usage of '&' and '|' as boolean logical operators in the
future. Refs #16211.
2012-10-10 01:15:29 +03:00
Anssi Kääriäinen a8b1861fc4 Revert "Fixed #16211 -- Added comparison and negation ops to F() expressions"
This reverts commit 28abf5f0eb.

Conflicts:

	docs/releases/1.5.txt
2012-10-10 01:15:29 +03:00
Tim Graham 6d46c740d8 Fixed #17435 - Clarified that QuerySet.update returns the number of rows matched 2012-10-06 07:03:20 -04:00
Don Spaulding 70fac984c8 Fixed format-o in docs/topics/db/queries.txt
It appears that our infamous villain, Significant Whitespace,
has struck again.

In this episode, little Timmy finds himself trapped in a
code well.  He need not despair, however, as Indentation Man
has heard his cries for help and sprung into action.

With his feline helper, Octocat, at his side, Indentation Man
races to the scene, flings open a web-based code editor, and with
terrific aplomb, frees Timmy to be the documentation he always
wanted to be.

Once again Goodness has prevailed.  In the fight for readable
documentation, no stray whitespace will ever be able to
withstand the str.strip()ing nature of....INDENTATION MAN.
2012-10-05 19:17:00 -05:00
Tomáš Ehrlich 443999a1ee Fixed #18996 - Docs on overriden model methods 2012-10-04 14:03:48 +02:00
Anssi Kääriäinen 28abf5f0eb Fixed #16211 -- Added comparison and negation ops to F() expressions
Work done by Walter Doekes and Trac alias knoeb. Reviewed by Simon
Charette.
2012-09-30 17:51:06 +03:00
Tim Graham 837425b425 Fixed #18934 - Removed versionadded/changed annotations for Django 1.3 2012-09-20 19:06:55 -04:00
James Bennett 5c5226a520 Fix typo: Non -> None 2012-09-08 16:14:13 -04:00