summaryrefslogtreecommitdiff
path: root/django/db/backends
AgeCommit message (Collapse)Author
2018-12-06Fixed #29932 -- Fixed combining compound queries with sub-compound queries ↵Mariusz Felisiak
on SQLite and Oracle.
2018-12-06Bumped mysqlclient requirement to >= 1.3.13.Tim Graham
There are test failures with older versions.
2018-12-05Fixed #30013 -- Fixed DatabaseOperations.last_executed_query() with ↵Tim Graham
mysqlclient 1.3.14+.
2018-11-26Refs #29722 -- Added introspection of materialized views for Oracle.Mariusz Felisiak
Thanks Tim Graham for the review.
2018-11-21Fixed #29949 -- Refactored db introspection identifier converters.Mariusz Felisiak
Removed DatabaseIntrospection.table_name_converter()/column_name_converter() and use instead DatabaseIntrospection.identifier_converter(). Removed DatabaseFeatures.uppercases_column_names. Thanks Tim Graham for the initial patch and review and Simon Charette for the review.
2018-11-20Changed BaseDatabaseSchemaEditor._effective_default() to staticmethod.Tim Graham
Follow up to 9cac10eee49eae3bbf7bd133ba0ae931b275324c.
2018-11-19Refs #29722 -- Added introspection of partitions for PostgreSQL.Nick Pope
2018-11-19Fixed cached_properties that share a common property.Sergey Fedoseev
The aliases aren't cached and thus the old usage will be an error after refs #29478.
2018-11-17Added BaseDatabaseSchemaEditor._effective_default() to allow testing without ↵Tim Graham
a connection.
2018-11-17Fixed #29505 -- Removed SchemaEditor's calling of callable defaults.Tim Graham
Thanks Eugene Pakhomov for the suggested fix.
2018-11-13Fixed #29788 -- Added support for Oracle Managed File (OMF) tablespaces.Mariusz Felisiak
2018-11-13Fixed #29641 -- Added support for unique constraints in Meta.constraints.Simon Charette
This constraint is similar to Meta.unique_together but also allows specifying a name. Co-authored-by: Ian Foote <python@ian.feete.org>
2018-11-13Refs #29641 -- Refactored database schema constraint creation.Simon Charette
Added a test for constraint names in the database. Updated SQLite introspection to use sqlparse to allow reading the constraint name for table check and unique constraints. Co-authored-by: Ian Foote <python@ian.feete.org>
2018-11-09Fixed #29934 -- Added sqlparse as a require dependency.Tim Graham
2018-11-09Removed unused 'tz' variable in typecast_timestamp().Srinivas Reddy Thatiparthy
2018-11-04Removed DatabaseOperation.savepoint_create/rollback_sql() on Oracle.Tom Forbes
Obsolete since 918f44e3ae650ff124067425d31c9d3deeba2224.
2018-11-01Fixed #29886 -- Fixed unaccent lookup when PostgreSQL's ↵Jayantha Gumballi
standard_conforming_strings option is off. Thanks Tom McClure for the patch.
2018-10-29Fixed #29547 -- Added support for partial indexes.Mads Jensen
Thanks to Ian Foote, Mariusz Felisiak, Simon Charettes, and Markus Holtermann for comments and feedback.
2018-10-29Fixed #29882 -- Added events and stored routines to MySQL's cloned test ↵thomazzo
databases.
2018-10-29Fixed #29868 -- Retained database constraints on SQLite table rebuilds.Simon Charette
Refs #11964. Thanks Scott Stevens for testing this upcoming feature and the report.
2018-10-27Fixed #29763 -- Added support for column renaming on SQLite.Hampus Dunström
2018-10-25Refs #27025 -- Removed obsolete sqlite3 transaction management workaround ↵Tim Graham
for Python 3.6+. Obsolete per https://bugs.python.org/issue10740#msg274816.
2018-10-25Fixed #29534 -- Made dbshell use rlwrap on Oracle if available.Mariusz Felisiak
2018-10-25Fixed #29827 -- Fixed reuse of test databases with --keepdb on MySQL.Sergey Fedoseev
Regression in e1253bc26facfa1d0fca161f43925e99c2591ced.
2018-10-25Removed useless check in sqlite's DatabaseWrapper._savepoint_allowed().Tim Graham
Obsolete since 27193aea0088b238e3ee0f0f235364a34a09265c.
2018-10-25Made DatabaseFeatures.uses_savepoints default to True.Tim Graham
2018-10-24Fixed F841 flake8 warning.Mariusz Felisiak
2018-10-21Fixed #29870 -- Added DurationField introspection for Oracle and PostgreSQL.Mariusz Felisiak
Thanks Tim Graham for the review.
2018-10-17Fixed #21171 -- Avoided starting a transaction when a single (or atomic ↵Florian Apolloner
queries) are executed. Checked the following locations: * Model.save(): If there are parents involved, take the safe way and use transactions since this should be an all or nothing operation. If the model has no parents: * Signals are executed before and after the previous existing transaction -- they were never been part of the transaction. * if `force_insert` is set then only one query is executed -> atomic by definition and no transaction needed. * same applies to `force_update`. * If a primary key is set and no `force_*` is set Django will try an UPDATE and if that returns zero rows it tries an INSERT. The first case is completly save (single query). In the second case a transaction should not produce different results since the update query is basically a no-op then (might miss something though). * QuerySet.update(): no signals issued, single query -> no transaction needed. * Model/Collector.delete(): This one is fun due to the fact that is does many things at once. Most importantly though: It does send signals as part of the transaction, so for maximum backwards compatibility we need to be conservative. To ensure maximum compatibility the transaction here is removed only if the following holds true: * A single instance is being deleted. * There are no signal handlers attached to that instance. * There are no deletions/updates to cascade. * There are no parents which also need deletion.
2018-10-15Fixed #29845 -- Fixed Cast crash on MySQL when casting to DecimalField.Mariusz Felisiak
2018-10-13Fixed various comments in django/db/backends/oracle/base.py.Mariusz Felisiak
2018-10-11Fixed #29836 -- Bumped required cx_Oracle to 6.0.Mariusz Felisiak
2018-10-09Simplified handling of DurationField values on MySQL/MariaDB.Sergey Fedoseev
2018-10-03Refs #27795 -- Removed force_bytes() usage in MySQL backend.Jon Dufresne
The mysqlclient cursor attribute `_last_executed` is always stored as bytes. Decode it. TextField values are already type str. No need to decode.
2018-10-02Refs #29722 -- Added introspection of materialized views for PostgreSQL.Nick Pope
2018-10-02Fixed #29719 -- Added introspection of foreign tables for PostgreSQL.Nick Pope
Thanks infinite-l00p for the initial patch.
2018-10-02Added django.db.backends.utils.names_digest() to remove redundant code.Jon Dufresne
2018-10-02Fixed ResourceWarning in MySQL's _clone_test_db().Jon Dufresne
2018-10-01Fixed #29767 -- Made date-related casts work on SQLiteClaude Paroz
Thanks Rémy Hubscher for the report and Tim Graham and Simon Charette for the reviews.
2018-09-26Fixed #29630 -- Fixed crash of sliced queries with multiple columns with the ↵Mariusz Felisiak
same name on Oracle 12.1. Regression in 0899d583bdb140910698d00d17f5f1abc8774b07. Thanks Tim Graham for the review and Jani Tiainen for help.
2018-09-26Made DatabaseWrapper.oracle_version() return a full version tuple.Mariusz Felisiak
2018-09-26Refs #29784 -- Switched to https:// links where available.Jon Dufresne
2018-09-25Fixed #29778 -- Fixed quoting of unique index names.Oleg
Regression in 3b429c96736b8328c40e5d77282b0d30de563c3c.
2018-09-25Refs #27795 -- Removed force_bytes() usage in db/backends/base/schema.py.Jon Dufresne
2018-09-25Refs #27795 -- Removed force_bytes() usage in db/backends/utils.py.Jon Dufresne
2018-09-18Fixed #23646 -- Added QuerySet.bulk_update() to efficiently update many models.Tom Forbes
2018-09-17Fixed #27899 -- Added support for phrase/raw searching in SearchQuery.Claude Paroz
Thanks Tim Graham, Nick Pope, and Claude Paroz for contribution and review.
2018-09-16Fixed #29759 -- Fixed crash on Oracle when fetching a returned insert id ↵Mariusz Felisiak
with cx_Oracle 7.
2018-09-14Simplified introspection methods for PostgreSQL.Nick Pope
2018-09-10Fixed #29500 -- Fixed SQLite function crashes on null values.Srinivas Reddy Thatiparthy
Co-authored-by: Srinivas Reddy Thatiparthy <thatiparthysreenivas@gmail.com> Co-authored-by: Nick Pope <nick.pope@flightdataservices.com>