summaryrefslogtreecommitdiff
path: root/django/db/backends
AgeCommit message (Collapse)Author
2023-04-03[4.2.x] Prevented PostgreSQL's DatabaseCreation._execute_create_test_db() ↵Tim Graham
from hiding clause-less exceptions. Regression in 3cafb783f3f711c7413ba2b8d7c8ff750bd4d6e1. Backport of 465f3c045b2cb7d757a8cbabc909c137901c9844 from main
2023-02-15[4.2.x] Fixed #34320 -- Make sure constraints names are obtained from ↵nabil-rady
truncated columns names. Backport of 6bdc3c58b65eb32fd63cd41849f00a17a36b4473 from main
2023-02-06[4.2.x] Made PostgreSQL's SchemaEditor._create_index_sql() respect the "sql" ↵Dan Glass
argument. Backport of bd366ca2aeffa869b7dbc0b0aa01caea75e6dc31 from main
2023-02-01[4.2.x] Refs #33476 -- Applied Black's 2023 stable style.David Smith
Black 23.1.0 is released which, as the first release of the year, introduces the 2023 stable style. This incorporates most of last year's preview style. https://github.com/psf/black/releases/tag/23.1.0 Backport of 097e3a70c1481ee7b042b2edd91b2be86fb7b5b6 from main
2023-01-31[4.2.x] Fixed #34304 -- Made MySQL's SchemaEditor.remove_constraint() don't ↵sag᠎e
create foreign key index when unique constraint is ignored. Regression in b731e8841558ee4caaba766c83f34ea9c7004f8b. Backport of 110b3b83567da22f19ec04210db134d0fe83d662 from main
2023-01-27[4.2.x] Refs #34255 -- Skipped test_group_by_nested_expression_with_params ↵Mariusz Felisiak
test on PostgreSQL when server-side binding cursors are used. Thanks Tim Graham for the review. Backport of 82dad11bfe45f96f15e2330f58f62919cab9f14c from main
2023-01-17Fixed #34255 -- Made PostgreSQL backend use client-side parameters binding ↵Mariusz Felisiak
with psycopg version 3. Thanks Guillaume Andreu Sabater for the report. Co-authored-by: Florian Apolloner <apollo13@users.noreply.github.com>
2023-01-17Refs #34255 -- Bumped required psycopg version to 3.1.8.Mariusz Felisiak
2023-01-12Refs #18468 -- Used obj_description() with a catalog name on PostgreSQL.Mariusz Felisiak
obj_description(object oid) without a catalog name is deprecated since there is no guarantee that OIDs are unique across different system catalogs. Thanks Tim Graham for the report.
2023-01-09Fixed #34176 -- Fixed grouping by ambiguous aliases.Simon Charette
Regression in b7b28c7c189615543218e81319473888bc46d831. Refs #31377. Thanks Shai Berger for the report and reviews. test_aggregation_subquery_annotation_values_collision() has been updated as queries that are explicitly grouped by a subquery should always be grouped by it and not its outer columns even if its alias collides with referenced table columns. This was not possible to accomplish at the time 10866a10 landed because we didn't have compiler level handling of colliding aliases.
2023-01-05Refs #32355 -- Bumped mysqlclient requirement to >= 1.4.3.Mariusz Felisiak
mysqlclient 1.4.3 is the first release to support Python 3.8.
2023-01-03Fixed #34200 -- Made the session role configurable on PostgreSQL.Mike Crute
2022-12-28Fixed #14094 -- Added support for unlimited CharField on PostgreSQL.Adrian Torres
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2022-12-28Fixed #18468 -- Added support for comments on columns and tables.kimsoungryoul
Thanks Jared Chung, Tom Carrick, David Smith, Nick Pope, and Mariusz Felisiak for reviews. Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com> Co-authored-by: Nick Pope <nick@nickpope.me.uk>
2022-12-27Fixed #34217 -- Fixed migration crash when removing check constraints on ↵DevilsAutumn
MySQL < 8.0.16.
2022-12-22Fixed #34219 -- Preserved Char/TextField.db_collation when altering column type.Mariusz Felisiak
This moves setting a database collation to the column type alteration as both must be set at the same time. This should also avoid another layer of the column type alteration when adding database comments support (#18468).
2022-12-15Fixed #33308 -- Added support for psycopg version 3.Daniele Varrazzo
Thanks Simon Charette, Tim Graham, and Adam Johnson for reviews. Co-authored-by: Florian Apolloner <florian@apolloner.eu> Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2022-12-12Refs #33308 -- Added DatabaseOperations.compose_sql() on PostgreSQL.Florian Apolloner
2022-12-12Refs #33308 -- Added psycopg_any.IsolationLevel.Florian Apolloner
2022-12-12Refs #33308 -- Added psycopg_any.sql.quote() hook.Florian Apolloner
2022-12-12Refs #33308 -- Moved psycopg2 imports to the psycopg_any module.Florian Apolloner
2022-12-08Made inspectdb used Cursor.description.display_size for CharFields' max_length.Mariusz Felisiak
internal_size is size for fixed-size types not for char types.
2022-12-08Fixed #34201 -- Bumped minimum supported SQLite to 3.21.0.Mariusz Felisiak
2022-12-06Refs #33308 -- Modernized database wrapper in the PostgreSQL backend.Florian Apolloner
- Used connection.info instead of connection.get_parameter_status() and connection.server_info which don't exist in psycopg 3. - Set encoding using the client_encoding connection parameter instead of connection.set_client_encoding() that doesn't exist in psycopg 3. - Used the dbname connection parameter instead of deprecated alias - database.
2022-12-05Removed redundant definition of DatabaseFeatures.can_release_savepoints on ↵Mariusz Felisiak
MySQL.
2022-12-01Refs #33308 -- Used psycopg's errors instead of errorcodes.Florian Apolloner
2022-11-28Refs #31169 -- Skipped test_get_test_db_clone_settings_not_supported on not ↵Mariusz Felisiak
in-memory SQLite database. multiprocessing's start method is checked only for in-memory SQLite databases.
2022-11-25Fixed #34103 -- Fixed logging SQL queries with duplicate parameters on Oracle.David Sanders
2022-11-24Used DatabaseFeatures.django_test_skips to skip ↵Christophe Baldy
AssertNumQueriesUponConnectionTests tests.
2022-11-24Fixed #29062 -- Prevented possibility of database lock when using ↵baldychristophe
LiveServerTestCase with in-memory SQLite database. Thanks Chris Jerdonek for the implementation idea.
2022-11-21Fixed #31090 -- Logged transaction management queries.Ilya Bass
Thanks to Petter Strandmark for the original idea and Mariusz Felisiak for advice during the DjangoConUS 2022 Sprint!
2022-11-17Fixed #28987 -- Fixed altering ManyToManyField when changing to ↵DevilsAutumn
self-referential.
2022-11-15Refs #33308 -- Used get_db_prep_value() to adapt JSONFields.Simon Charette
2022-11-08Used super().execute/executemany() in SQLiteCursorWrapper.Nick Pope
2022-11-08Fixed #10070 -- Added support for pyformat style parameters on SQLite.Ryan Cheley
Co-authored-by: Nick Pope <nick@nickpope.me.uk>
2022-11-07Refs #33374 -- Adjusted full match condition handling.Simon Charette
Adjusting WhereNode.as_sql() to raise an exception when encoutering a full match just like with empty matches ensures that all case are explicitly handled.
2022-11-07Refs #17144 -- Removed support for grouping by primary key.Simon Charette
No core backend require the feature anymore as it was only added to support a MySQL'ism that has been deprecated since then.
2022-11-07Fixed #31331 -- Switched MySQL to group by selected primary keys.Simon Charette
MySQL 5.7.15 supports group by functional dependences so there is no need to special case group by main table primary key anymore and special case the ONLY_FULL_GROUP_BY sql mode.
2022-11-04Fixed #34138 -- Avoided table rebuild when adding inline m2m fields on SQLite.Mariusz Felisiak
Regression in 2f73e5406d54cb8945e187eff302a3a3373350be. Thanks David Wobrock for the report.
2022-11-04Removed obsolete references to pysqlite.Nick Pope
Obsolete since 1b06d5e6f6be8e567ce78c892c485af039830d7d.
2022-11-01Refs #33768 -- Fixed ordering compound queries by NULLs on SQLite < 3.30.Simon Charette
The lack of support for native nulls last/first on SQLite 3.28 and 3.29 requires the compound query to be wrapped for emulation layer to work properly.
2022-10-31Used more augmented assignment statements.Nick Pope
Identified using the following command: $ git grep -I '\(\<[_a-zA-Z0-9]\+\>\) *= *\1 *[-+/*^%&|<>@]'
2022-10-26Refs #33173 -- Fixed destroying test databases when running tests in ↵Mariusz Felisiak
parallel using spawn on Windows. Thanks Simon Willison for inspiration.
2022-10-25Fixed DatabaseFeatures.supports_select_(intersection/difference) on MariaDB ↵Mariusz Felisiak
and MySQL 8.0.31+.
2022-10-06Refs #33308 -- Enabled explicit GROUP BY and ORDER BY aliases.Simon Charette
This ensures explicit grouping from using values() before annotating an aggregate function groups by selected aliases if supported. The GROUP BY feature is disabled on Oracle because it doesn't support it.
2022-10-05Fixed #33768 -- Fixed ordering compound queries by nulls_first/nulls_last on ↵Simon Charette
MySQL. Columns of the left outer most select statement in a combined query can be referenced by alias just like by index. This removes combined query ordering by column index and avoids an unnecessary usage of RawSQL which causes issues for backends that specialize the treatment of null ordering.
2022-10-03Fixed #34070 -- Added subsecond support to Now() on SQLite and MySQL.Lily Foote
2022-10-03Fixed #23353 -- Used "raise from" when raising TransactionManagementError.David Wobrock
This change sets the __cause__ attribute to raised exceptions.
2022-10-01Refs #34058 -- Fixed changing/deleting sequences when altering pre-Django ↵Mariusz Felisiak
4.1 auto fields on PostgreSQL. Thanks Anders Kaseorg for the report. Follow up to 19e6efa50b603af325e7f62058364f278596758f. Regression in 2eea361eff58dd98c409c5227064b901f41bd0d6.
2022-09-29Fixed #34058 -- Changed sequence types when altering pre-Django 4.1 auto ↵Mariusz Felisiak
fields on PostgreSQL. Thanks Anders Kaseorg for the report. Thanks Florian Apolloner for pair programming. Regression in 2eea361eff58dd98c409c5227064b901f41bd0d6.