Aymeric Augustin
4dbd1b2dd8
Used commit_on_success_unless_managed to make ORM operations atomic.
2013-03-11 15:05:05 +01:00
Aymeric Augustin
86fd920f67
Removed a test that no longer makes any sense.
...
Since unmanaged == autocommit, there's nothing to commit or roll back.
2013-03-11 15:05:04 +01:00
Aymeric Augustin
0cee3c0e43
Updated a test that doesn't make sense with autocommit.
2013-03-11 15:05:04 +01:00
Aymeric Augustin
423c0d5e29
Added a safety net for developers messing with autocommit.
2013-03-11 15:05:04 +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
557e404127
Re-ordered functions by deprecation status.
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
f7245b83bb
Implemented atomic_if_autocommit.
...
It disables transaction management entirely when AUTOCOMMIT is False.
2013-03-11 14:48:55 +01:00
Aymeric Augustin
09ba70f9f1
Made transaction management work even before the first SQL query.
...
Thanks Florian again.
2013-03-11 14:48:55 +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
e264f67174
Refactored implementation of savepoints.
...
Prepared for using savepoints within transactions in autocommit mode.
2013-03-11 14:48:55 +01:00
Aymeric Augustin
918f44e3ae
Moved standard SQL for savepoints in the base backend.
...
These methods are only called when uses_savepoints = True anyway.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
3bdc7a6a70
Deprecated transaction.is_managed().
...
It's synchronized with the autocommit flag.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
ba5138b1c0
Deprecated transaction.commit/rollback_unless_managed.
...
Since "unless managed" now means "if database-level autocommit",
committing or rolling back doesn't have any effect.
Restored transactional integrity in a few places that relied on
automatically-started transactions with a transitory API.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
14aa563f51
Removed superfluous code now that connections use autocommit by default.
2013-03-11 14:48:54 +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
cfc114e00e
Removed _enter/_leave_transaction_management.
...
The goal is to make all databases share a common, autocommit-based,
implementation.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
1617557ae3
Added BaseDatabaseWrapper.ensure_connection.
...
This API is useful because autocommit cannot be managed without an open
connection.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
7b4815b455
Expressed the dirty flag handling logic in terms of autocommit.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
cd364efa00
Stopped flipping the uses_savepoints feature at runtime.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
af9e9386eb
Enabled autocommit for PostgreSQL.
...
For users who didn't activate autocommit in their database options, this
is backwards-incompatible in "non-managed" aka "auto" transaction state.
This state now uses database-level autocommit instead of ORM-level
autocommit.
Also removed the uses_autocommit feature which lost its purpose.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
8717b0668c
Separated autocommit and isolation level handling for PostgreSQL.
...
Autocommit cannot be manipulated independently from an open connection.
This commit introduces a minor change in behavior: entering transaction
management forces opening a databasse connection. This shouldn't be
backwards incompatible in any practical use case.
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
Aymeric Augustin
7aacde84f2
Made transaction.managed a no-op and deprecated it.
...
enter_transaction_management() was nearly always followed by managed().
In three places it wasn't, but they will all be refactored eventually.
The "forced" keyword argument avoids introducing behavior changes until
then.
This is mostly backwards-compatible, except, of course, for managed
itself. There's a minor difference in _enter_transaction_management:
the top self.transaction_state now contains the new 'managed' state
rather than the previous one. Django doesn't access
self.transaction_state in _enter_transaction_management.
2013-03-11 14:48:53 +01:00
Aymeric Augustin
9cec689e6a
Moved a warning in the 1.6 notes back to its expected location.
2013-03-11 12:04:29 +01:00
Aymeric Augustin
ce76fbfc5a
Fixed #20019 -- Ensured HttpRequest.resolver_match always exists.
...
Obviously it isn't set until the URL is resolved.
2013-03-10 23:28:19 +01:00
Ramiro Morales
7fca4416c7
Made (make|compile)messages check for availability of gettext commands.
...
Refs #19584 .
2013-03-10 17:31:11 -03:00
Alex Gaynor
3f43f5f3b0
Merge pull request #892 from JonLoy/ticket_20018
...
Fixed #20018 : Added backtick to fix reference
2013-03-10 11:19:58 -07:00
Jonathan Loy
b3c6a20e71
Fixed #20018 : Added backtick to fix reference
...
Fixed #20018
2013-03-10 14:09:33 -04:00
Claude Paroz
63c52dcbcd
Fixed #20008 -- Removed trailing slash in Wikipedia link
...
Thanks senden9 at gmail.com for the report.
2013-03-10 15:57:51 +01:00
Florian Apolloner
8aefd30379
Fixed BinaryField support on Oracle.
2013-03-09 23:39:14 +01:00
Claude Paroz
360217fc87
Fixed #19171 -- Allowed coordinate transforms with custom SRIDs
...
Thanks reidpr at lanl.gov for the report.
2013-03-09 17:46:20 +01:00
Claude Paroz
e6f5b7eacd
Fixed #9806 -- Allowed editing GeometryField with OpenLayersWidget
...
Thanks Paul Winkler for the initial patch.
2013-03-09 16:10:28 +01:00
Claude Paroz
f3d1aebed1
Reformatted slightly openlayers.js
2013-03-09 15:08:16 +01:00
Claude Paroz
6a91b63842
Fixed #19923 -- Display tracebacks for non-CommandError exceptions
...
By default, show tracebacks for management command errors when the
exception is not a CommandError.
Thanks Jacob Radford for the report.
2013-03-09 12:38:45 +01:00
Claude Paroz
5e80571bf9
Fixed #16594 -- Added wkt 3D support for GEOS geometries
...
This requires GEOS >= 3.3.0 to function properly. On previous
versions, the Z dimension will simply not appear in the wkt.
Disabled OpenLayers editing for 3D geometries (unsupported).
2013-03-09 12:02:22 +01:00
Claude Paroz
8a92139d8a
Replaced proj4 testing by a regex
2013-03-08 22:52:41 +01:00
Claude Paroz
cbfb8ed53b
Fixed a regression in forms changed_data
...
Thanks Loic Bistuer for spotting the regression and the initial
patch. Refs #16612 .
2013-03-08 18:19:24 +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
477d737e1e
Merge pull request #850 from bmispelon/ticket-19916
...
Fix 19916. Smarter tokenizing of contrib.comment's templatetags arguments
2013-03-07 12:12:29 -08:00
Alex Gaynor
1b81f328f4
Adde two "versionadded" markers, thanks to mYk for noticing.
2013-03-07 12:05:06 -08:00
Alex Gaynor
bbbd698c7a
Added a ManyToManyField(db_constraint=False) option, this allows not creating constraints on the intermediary models.
2013-03-07 11:24:51 -08:00
Baptiste Mispelon
81804ae474
Fix 19916. Smarter tokenizing of contrib.comment's templatetags arguments.
2013-03-07 19:30:38 +01:00
Claude Paroz
4cccb85e29
Fixed #19997 -- Added custom EMPTY_VALUES to form fields
...
Thanks Loic Bistuer for the report and the patch.
2013-03-07 15:22:03 +01:00
Aymeric Augustin
25ce177e66
Added missing method in the dummy database backend.
2013-03-07 14:53:52 +01:00