Tim Graham
93d73dac91
Moved DatabaseCreation.data_types properties to DatabaseWrapper.
...
refs #22340 .
2014-12-31 08:29:17 -05:00
Marc Tamlyn
962bb9b6bd
Refs #2443 -- Move the durationfield converter logic.
...
This reduces how frequently this logic is run significantly.
Thanks to Anssi for the suggestion.
2014-12-23 10:41:42 +00:00
Marc Tamlyn
5ca82e710e
Fixed #24033 -- Use interval type on Oracle.
...
Use INTERVAL DAY(9) TO SECOND(6) for Durationfield on Oracle rather than
storing as a NUMBER(19) of microseconds.
There are issues with cx_Oracle which require some extra data
manipulation in the database backend when constructing queries, but it
handles the conversion back to timedelta objects cleanly.
Thanks to Shai for the review.
2014-12-23 10:38:32 +00:00
Marc Tamlyn
57554442fe
Fixed #2443 -- Added DurationField.
...
A field for storing periods of time - modeled in Python by timedelta. It
is stored in the native interval data type on PostgreSQL and as a bigint
of microseconds on other backends.
Also includes significant changes to the internals of time related maths
in expressions, including the removal of DateModifierNode.
Thanks to Tim and Josh in particular for reviews.
2014-12-20 18:28:29 +00:00
Claude Paroz
df30ae07fc
Fixed postgis test database initialization
...
Refs #20968 . Allow querying template_postgis presence without
existing test database.
Thanks Tim Graham for the review.
2014-12-12 20:08:07 +01:00
Josh Smeaton
267a1dcd9b
Fixed #23941 -- Removed implicit decimal formatting from expressions.
2014-12-12 10:17:48 -05:00
Claude Paroz
8f97413fae
Fixed #20968 -- Checked Spatialite metadata before migrations
...
Thanks Kenial S. Lee for the initial patch and Tim Graham for
the review.
2014-12-08 22:22:53 +01:00
Jon Dufresne
4468c08d70
Fixed #23968 -- Replaced list comprehension with generators and dict comprehension
2014-12-08 07:58:23 -05:00
Thomas Chaumeny
b2aad7b836
Replaced set([foo, ...]) by {foo, ...} literals. Refs PR 3282.
...
Thanks Collin Anderson for the review.
2014-09-29 00:01:38 +07:00
Shai Berger
c1ae0621ba
Fixed #22738 -- made finer distinctions for when Boolean is not detected on Oracle
...
Thanks Claude Paroz for partial fix and Simon Charrette for review
2014-09-27 09:49:50 +03:00
Claude Paroz
dbdae3a755
Fixed #22738 -- Abstracted boolean field type introspection
...
Thanks maxi for the report, Shai Berger for his help with the patch
and Tim Graham for the review.
2014-09-26 20:03:44 +02:00
Claude Paroz
d1ca70110f
Factorized schema_editor() at BaseDatabaseWrapper level
2014-09-26 08:50:16 +02:00
Claude Paroz
ed297061a6
Fixed #18782 -- Prevented sql_flush to flush views
...
Thanks rodolfo_3 for the report and the initial patch, and
Josh Smeaton, Shai Berger and Tim Graham for the reviews.
2014-09-23 20:13:31 +02:00
Claude Paroz
b8cdc7dcc3
Made get_table_list return a TableInfo named tuple
2014-09-23 20:13:31 +02:00
Tim Graham
1101467ce0
Limited lines to 119 characters in django/
...
refs #23395 .
2014-09-05 09:22:16 -04:00
Marc Tamlyn
e9103402c0
Fixed #18757 , #14462 , #21565 -- Reworked database-python type conversions
...
Complete rework of translating data values from database
Deprecation of SubfieldBase, removal of resolve_columns and
convert_values in favour of a more general converter based approach and
public API Field.from_db_value(). Now works seamlessly with aggregation,
.values() and raw queries.
Thanks to akaariai in particular for extensive advice and inspiration,
also to shaib, manfre and timograham for their reviews.
2014-09-03 20:36:03 +01:00
Claude Paroz
6295ea0027
Replaced HAS_SPATIAL_DB by testing database feature
...
Refs #22632 . This should be the base for using more database
features to exclude specific backends in GIS tests.
Thanks Tim Graham for the review.
2014-08-19 17:57:01 +02:00
Alex Hill
938da36cb1
Fixed #21603 -- Fixed complex RawQuerySets queries on some versions of SQLite.
2014-08-06 08:41:34 -04:00
Shai Berger
746f2a4bed
Fixed #23061 : Avoided setting a limit on a query for get with select_for_update on Oracle
...
Thanks Michael Miller for reporting the issue.
2014-08-05 03:12:08 +03:00
Aymeric Augustin
729e4ae4f0
Fixed #23074 -- Avoided leaking savepoints in atomic.
...
Thanks Chow Loong Jin for the report and the initial patch.
2014-07-28 14:30:41 +02:00
areski
90faa196f6
Fixed #22873 -- Renamed use_debug_cursor to force_debug_cursor to clarify the behavior.
2014-07-26 10:38:46 -04:00
Shai Berger
dd9b3312d0
Fixed name of database connection feature
2014-07-14 19:23:57 +03:00
Anubhav Joshi
1c50d6ae2b
Fixed problem introduced with #refs 13711.
2014-06-23 19:36:40 +03:00
Anubhav Joshi
91f1b6dcdc
Fixed #13711 -- Model check added to ensure that auto-generated column name is within limits of the database.
...
Thanks russellm for report and Tim Graham for review.
2014-06-17 16:16:02 -04:00
Tim Graham
82c935d44c
Renamed DatabaseFeature.supports_check_constraints to supports_column_check_constraints.
...
Thanks maxi for the suggestion.
2014-06-16 19:25:13 -04:00
Shai Berger
612290400f
Fixed #22816 -- Corrected Oracle feature flag and fixed introspection test
2014-06-14 00:43:49 +03:00
Aymeric Augustin
40bfd8561d
Fixed #20420 -- Normalized query counts on Oracle.
...
This is achieved by inserting a fake entry in connection.queries when
not releasing a savepoint (since Oracle doesn't support that operation.)
Also removed the can_release_savepoints feature that was recently added,
but is superseded by this solution.
2014-06-09 21:38:10 +02:00
Aymeric Augustin
127218b92b
Simplified handling of use_debug_cursor.
...
Turned it from a tri-valued boolean into a regular boolean.
2014-06-09 21:35:17 +02:00
Aymeric Augustin
58de495c54
Fixed #17427 -- Removed dubious definition of connections equality.
2014-06-07 17:04:10 +02:00
Aymeric Augustin
cfcca7ccce
Fixed #3711 , #6734 , #12581 -- Bounded connection.queries.
...
Prevented unlimited memory consumption when running background tasks
with DEBUG=True.
Thanks Rob, Alex, Baptiste, and others.
2014-06-07 14:37:43 +02:00
Aymeric Augustin
e071f67b7f
Replaced an explicit vendor check by a feature flag.
...
Forward-port of c9aedce0
from stable/1.7.x.
2014-06-06 00:32:13 +02:00
Aymeric Augustin
a03d38ddd4
Added a flag for the ability to introspect nullable fields.
...
Previously this was conflated with another Oracle-specific behavior.
2014-06-05 17:56:56 +02:00
Shai Berger
69337d485c
Set straight the sense of 'uppercases_column_names' feature flag
2014-05-28 21:16:24 +03:00
Andrew Godwin
1b07781292
Add feature for implied null (needed for Firebird backend)
2014-05-20 13:27:07 +01:00
Tim Martin
27aa85246a
Fixed #20897 -- Added make_cursor() for consistent cursor creation
...
In django.db.backends.BaseDatabaseWrapper, pulled the creation of
cursors in the non-debug case into a separate method, in order to
make behavior more consistent when overriding the cursor creation
in derived classes.
2014-05-15 07:55:36 -04:00
Aymeric Augustin
fb90b7cda2
Adjusted refactoring of vendor checks.
...
Thanks Shai for the thorough review.
2014-05-10 14:40:42 +02:00
Aymeric Augustin
99d9fa329a
Added feature flags for introspection capabilities.
2014-05-08 22:11:20 +02:00
Aymeric Augustin
cff59bedc2
Split ignores_nulls_in_unique_constraints feature.
...
Oracle and SQL Server don't have exactly the same limitations. It's
worth treating them differently.
2014-05-08 22:11:20 +02:00
Aymeric Augustin
c70a61eb49
Replaced vendor checks by three feature flags.
2014-05-08 22:11:15 +02:00
Alex Gaynor
2bcb8bfc8d
Fix many many typos in comments throughout the codebase
2014-04-26 10:18:45 -07:00
Aymeric Augustin
8b5b199e20
Fixed #3214 -- Stopped parsing SQL with regex.
...
Avoided introducing a new regex-based SQL splitter in the migrations
framework, before we're bound by backwards compatibility.
Adapted this change to the legacy "initial SQL data" feature, even
though it's already deprecated, in order to facilitate the transition
to migrations.
sqlparse becomes mandatory for RunSQL on some databases (all but
PostgreSQL). There's no API to provide a single statement and tell
Django not to attempt splitting. Since we have a more robust splitting
implementation, that seems like a good tradeoff. It's easier to add a
new keyword argument later if necessary than to remove one.
Many people contributed to both tickets, thank you all, and especially
Claude for the review.
Refs #22401 .
2014-04-26 17:46:23 +02:00
Aymeric Augustin
3033a7193a
Fixed #21166 -- Reset errors_occurred flag after commit and rollback.
2014-04-25 22:45:11 +02:00
Aymeric Augustin
b0f4eecfa7
Ignored repeated calls to connection.close().
...
Forwardport of 9bbb43dd1a
from stable/1.7.x
2014-04-24 09:14:26 -04:00
Aymeric Augustin
25860096f9
Fixed #21239 -- Maintained atomicity when closing the connection.
...
Refs #15802 -- Reverted #7c657b24 as BaseDatabaseWrapper.close() now
has a proper "finally" clause that may need to preserve self.connection.
2014-04-10 20:57:43 +02:00
Aymeric Augustin
5f2f47fdfc
Fixed #21553 -- Ensured unusable database connections get closed.
2014-04-09 22:41:33 +02:00
Simon Charette
1506c71a95
Fixed #12030 -- Validate integer field range at the model level.
...
Thanks to @timgraham for the review.
2014-03-25 14:31:20 -04:00
Aymeric Augustin
6993f2886b
Fixed typo in comments.
2014-03-21 22:16:31 +01:00
Aymeric Augustin
0f9560855e
Removed legacy transaction management per the deprecation timeline.
2014-03-21 21:06:50 +01:00
Claude Paroz
210d0489c5
Fixed #21188 -- Introduced subclasses for to-be-removed-in-django-XX warnings
...
Thanks Anssi Kääriäinen for the idea and Simon Charette for the
review.
2014-03-08 09:57:40 +01:00
Rodolfo Carvalho
0d91225892
Fixed many typos in comments and docstrings.
...
Thanks Piotr Kasprzyk for help with the patch.
2014-03-03 07:38:09 -05:00