Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#30897 closed New feature (fixed)

Improved QuerySet.explain() for newer versions of MariaDB, MySQL and PostgreSQL.

Reported by: Nick Pope Owned by: Nick Pope
Component: Database layer (models, ORM) Version: dev
Severity: Normal Keywords: explain, analyze, mariadb, mysql, postgresql
Cc: Triage Stage: Ready for checkin
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Nick Pope)

Updated 2020-08-24:

  • MySQL 8.0.21+ has support for EXPLAIN ANALYZE FORMAT=TREE.
    • Note: We are not removing restriction on use of ANALYZE with FORMAT until more than one format is supported with this combination of options. (See review.)
  • PostgreSQL 13+ has support for a new WAL option to EXPLAIN. (Note: Requires ANALYZE option.)

Change History (15)

comment:1 by Nick Pope, 4 years ago

Has patch: set

comment:2 by Mariusz Felisiak, 4 years ago

Triage Stage: UnreviewedAccepted

comment:3 by Nick Pope, 4 years ago

Description: modified (diff)
Keywords: postgresql added
Summary: Improved QuerySet.explain() for newer versions of MariaDB and MySQL.Improved QuerySet.explain() for newer versions of MariaDB, MySQL and PostgreSQL.

comment:4 by Mariusz Felisiak, 4 years ago

Needs tests: set
Patch needs improvement: set

comment:5 by Mariusz Felisiak <felisiak.mariusz@…>, 4 years ago

In 6e9189c:

Refs #30897 -- Added test for SETTINGS option to Queryset.explain() on PostgreSQL 12+.

comment:6 by Nick Pope, 4 years ago

Needs tests: unset
Patch needs improvement: unset

Patch improved, tests added.

comment:7 by Mariusz Felisiak, 4 years ago

Triage Stage: AcceptedReady for checkin

comment:8 by Mariusz Felisiak <felisiak.mariusz@…>, 4 years ago

In 74296133:

Refs #30897 -- Added support for TREE format to Queryset.explain() on MySQL 8.0.16+.

comment:9 by Mariusz Felisiak <felisiak.mariusz@…>, 4 years ago

In 55df1750:

Refs #30897 -- Added support for ANALYZE option to Queryset.explain() on MariaDB and MySQL 8.0.18+.

comment:10 by Mariusz Felisiak <felisiak.mariusz@…>, 4 years ago

In cabf1fe:

Refs #30897 -- Made cosmetic edits to QuerySet.explain() documentation.

comment:11 by Mariusz Felisiak, 4 years ago

Resolution: fixed
Status: assignedclosed

comment:12 by Nick Pope, 4 years ago

Description: modified (diff)

comment:13 by Nick Pope, 4 years ago

Another PR for some additional minor updates.

comment:14 by Nick Pope, 4 years ago

Description: modified (diff)

comment:15 by GitHub <noreply@…>, 4 years ago

In b3124215:

Refs #30897 -- Added test for WAL option to Queryset.explain() on PostgreSQL 13+.

Note: See TracTickets for help on using tickets.
Back to Top