| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-12-11 | Fixed #35936 -- Used unnest for bulk inserts on Postgres when possible. | Simon Charette | |
| This should make bulk_create significantly faster on Postgres when provided only literal values. Thanks James Sewell for writing about this technique, Tom Forbes for validating the performance benefits, David Sanders and Mariusz Felisiak for the review. | |||
| 2024-08-28 | Fixed #35688 -- Restored timezone and role setters to be PostgreSQL ↵ | Sarah Boyce | |
| DatabaseWrapper methods. Following the addition of PostgreSQL connection pool support in Refs #33497, the methods for configuring the database role and timezone were moved to module-level functions. This change prevented subclasses of DatabaseWrapper from overriding these methods as needed, for example, when creating wrappers for other PostgreSQL-based backends. Thank you Christian Hardenberg for the report and to Florian Apolloner and Natalia Bidart for the review. Regression in fad334e1a9b54ea1acb8cce02a25934c5acfe99f. Co-authored-by: Natalia <124304+nessita@users.noreply.github.com> | |||
| 2024-05-27 | Fixed #35479 -- Dropped support for PostgreSQL 13 and PostGIS 3.0. | Mariusz Felisiak | |
| 2024-04-10 | Made postgresql.tests.Tests.test_connect_pool less flaky by increasing ↵ | Sarah Boyce | |
| timeout value. | |||
| 2024-03-01 | Refs #33497 -- Added connection pool support for PostgreSQL. | Sarah Boyce | |
| Co-authored-by: Florian Apolloner <florian@apolloner.eu> Co-authored-by: Ran Benita <ran@unusedvar.com> | |||
| 2024-01-12 | Fixed #35028 -- Disabled server-side bindings for named cursors on psycopg >= 3. | Simon Charette | |
| While we provide a `cursor_factory` based on the value of the `server_side_bindings` option to `psycopg.Connection` it is ignored by the `cursor` method when `name` is specified for `QuerySet.iterator()` usage and it causes the usage of `psycopg.ServerCursor` which performs server-side bindings. Since the ORM doesn't generates SQL that is suitable for server-side bindings when dealing with parametrized expressions a specialized cursor must be used to allow server-side cursors to be used with client-side bindings. Thanks Richard Ebeling for the report. Thanks Florian Apolloner and Daniele Varrazzo for reviews. | |||
| 2023-12-07 | Refs #34986 -- Fixed ↵ | Nick Pope | |
| backends.postgresql.test_server_side_cursors.ServerSideCursorsPostgres tests for PyPy. | |||
| 2023-12-06 | Fixed typo in tests/backends/postgresql/test_server_side_cursors.py. | Nick Pope | |
| 2023-09-22 | Fixed #34840 -- Avoided casting string base fields on PostgreSQL. | Mariusz Felisiak | |
| Thanks Alex Vandiver for the report. Regression in 09ffc5c1212d4ced58b708cbbf3dfbfb77b782ca. | |||
| 2023-09-20 | Fixed #34851 -- Dropped support for PostgreSQL 12 and PostGIS 2.5. | Mariusz Felisiak | |
| 2023-09-18 | Refs #33872 -- Removed ↵ | Mariusz Felisiak | |
| django.contrib.postgres.fields.CIText/CICharField/CIEmailField/CITextField. Per deprecation timeline. | |||
| 2023-04-18 | Fixed #16055 -- Fixed crash when filtering against char/text GenericRelation ↵ | David Wobrock | |
| relation on PostgreSQL. | |||
| 2023-04-14 | Fixed #34486 -- Fixed DatabaseOperations.compose_sql() crash with no ↵ | Scott Macpherson | |
| existing database connection on PostgreSQL. Regression in 09ffc5c1212d4ced58b708cbbf3dfbfb77b782ca. | |||
| 2023-04-07 | Fixed #34470 -- Enforced UTF-8 encoding on PostgreSQL. | Mariusz Felisiak | |
| Regression in 6a2165816394ab4bb259f6171e82417e098e97a6. | |||
| 2023-04-07 | Fixed #34466 -- Reallowed setting cursor_factory in DATABASES["options"] on ↵ | Anders Kaseorg | |
| PostgreSQL. Regression in 09ffc5c1212d4ced58b708cbbf3dfbfb77b782ca. | |||
| 2023-01-17 | Fixed #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-03 | Fixed #34200 -- Made the session role configurable on PostgreSQL. | Mike Crute | |
| 2022-12-15 | Fixed #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-12 | Refs #33308 -- Added psycopg_any.IsolationLevel. | Florian Apolloner | |
| 2022-12-12 | Refs #33308 -- Moved psycopg2 imports to the psycopg_any module. | Florian Apolloner | |
| 2022-12-08 | Avoided direct mocking of psycopg2.__version__ in ↵ | Mariusz Felisiak | |
| test_correct_extraction_psycopg2_version(). | |||
| 2022-12-06 | Refs #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-01 | Refs #33308 -- Used psycopg's errors instead of errorcodes. | Florian Apolloner | |
| 2022-08-03 | Fixed #33872 -- Deprecated ↵ | Mariusz Felisiak | |
| django.contrib.postgres.fields.CIText/CICharField/CIEmailField/CITextField. | |||
| 2022-05-19 | Fixed #33717 -- Dropped support for PostgreSQL 11. | Mariusz Felisiak | |
| 2022-05-04 | Fixed #33675 -- Dropped support for PostgreSQL 10 and PostGIS 2.4. | Mariusz Felisiak | |
| 2022-04-13 | Fixed #30511 -- Used identity columns instead of serials on PostgreSQL. | Florian Apolloner | |
| 2022-02-18 | Fixed #33379 -- Added minimum database version checks. | Hasan Ramezani | |
| Thanks Tim Graham for the review. | |||
| 2022-02-07 | Refs #33476 -- Reformatted code with Black. | django-bot | |
| 2021-12-22 | Refs #32355 -- Bumped required psycopg2 version to 2.8.4. | Mariusz Felisiak | |
| psycopg2 2.8.4 is the first release to support Python 3.8. | |||
| 2021-10-01 | Fixed #33160 -- Avoided suppressing query errors in _nodb_cursor() on ↵ | Daniel Hahler | |
| PostgreSQL. | |||
| 2021-07-05 | Refs #32508 -- Raised ImproperlyConfigured/TypeError instead of using "assert". | Mateo Radman | |
| 2021-02-02 | Fixed #32403 -- Fixed re-raising DatabaseErrors when using only 'postgres' ↵ | Mariusz Felisiak | |
| database. Thanks Kazantcev Andrey for the report. Regression in f48f671223a20b161ca819cf7d6298e43b8ba5fe. | |||
| 2021-01-20 | Fixed #32292 -- Added support for connection by service name to PostgreSQL. | Hasan Ramezani | |
| 2020-07-30 | Bumped minimum isort version to 5.1.0. | David Smith | |
| Fixed inner imports per isort 5. isort 5.0.0 to 5.1.0 was unstable. | |||
| 2020-04-17 | Fixed #31473 -- Made sql_flush() use RESTART IDENTITY to reset sequences on ↵ | Jon Dufresne | |
| PostgreSQL. The sql_flush() positional argument sequences is replaced by the boolean keyword-only argument reset_sequences. This ensures that the old function signature can't be used by mistake when upgrading Django. When the new argument is True, the sequences of the truncated tables will reset. Using a single boolean value, rather than a list, allows making a binary yes/no choice as to whether to reset all sequences rather than a working on a completely different set. | |||
| 2020-04-17 | Added test coverage for DatabaseOperations.sql_flush(). | Jon Dufresne | |
| 2020-02-06 | Fixed #31233 -- Closed database connections and cursors after use. | Jon Dufresne | |
| 2020-02-06 | Refs #31233 -- Changed DatabaseWrapper._nodb_connection to _nodb_cursor(). | Jon Dufresne | |
| It is now a method instead of a property and returns a context manager that yields a cursor on entry and closes the cursor and connection upon exit. | |||
| 2020-02-04 | Simplified imports from django.db and django.contrib.gis.db. | Nick Pope | |
| 2019-04-29 | Fixed #30148 -- Logged COPY ... TO statements in connection.queries on ↵ | kingbuzzman | |
| PostgreSQL. | |||
| 2019-02-20 | Fixed #30193, Refs #28478 -- Avoided PostgreSQL connection health checks on ↵ | Simon Charette | |
| initialization. This addressed a regression introduced by a96b9019320ed8236659ee520a7a017c1bafbc6f as identified by Ran Benita. | |||
| 2018-08-17 | Refs #29015 -- Added database name to PostgreSQL database name too long ↵ | Jon Dufresne | |
| exception. | |||
| 2018-08-03 | Fixed #29613 -- Fixed --keepdb on PostgreSQL if the database exists and the ↵ | Mariusz Felisiak | |
| user can't create databases. Regression in e776dd2db677d58dcb50aea20d3bb191537df25b. Thanks Tim Graham for the review. | |||
| 2018-05-09 | Fixed #29363 -- Added SimpleTestCase.assertWarnsMessage(). | Morgan Aubert | |
| 2018-04-27 | Fixed #29015 -- Added an exception if the PostgreSQL database name is too long. | priyanshsaxena | |
| 2018-04-03 | Refs #24791 -- Made PostgreSQL's nodb connection use first PostgresSQL db ↵ | Mariusz Felisiak | |
| when 'postgres' db isn't available. Thanks Tim Graham and Claude Paroz for reviews. | |||
| 2017-12-06 | Fixed #28893 -- Removed unnecessary dict.items() calls. | Tim Graham | |
| 2017-11-29 | Fixed #28702 -- Made query lookups for CIText fields use citext. | Mads Jensen | |
| 2017-11-28 | Fixed #28853 -- Updated connection.cursor() uses to use a context manager. | Jon Dufresne | |
