Opened 5 years ago

Closed 5 years ago

#30614 closed Cleanup/optimization (wontfix)

Add constraint name validation to system checks.

Reported by: Can Sarıgöl Owned by: Can Sarıgöl
Component: Database layer (models, ORM) Version: dev
Severity: Normal Keywords:
Cc: Triage Stage: Unreviewed
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Mariusz Felisiak)

Constraints names cannot start with an underscore or a number and cannot be longer than 30 characters on Oracle. We can restrict them with system checks for cross-database compatibility.

Change History (3)

comment:1 by Can Sarıgöl, 5 years ago

Has patch: set
Owner: changed from nobody to Can Sarıgöl
Status: newassigned

comment:2 by Mariusz Felisiak, 5 years ago

Description: modified (diff)

After double-thinking I'm not sure if we want this change. First of all it is backward incompatible and it is not a minor incompatibility. Constraints have been introduced in Django 2.2 and for all databases (except Oracle) names starting with an underscore _ or a digit, or with a name of length greater than 30 characters are valid (63 characters on PostgreSQL, 64 on MySQL). I agree that it is a inconsistency between constraints and indexes policy but still we need to be careful with introducing incompatibilities.

comment:3 by Mariusz Felisiak, 5 years ago

Resolution: wontfix
Status: assignedclosed
Note: See TracTickets for help on using tickets.
Back to Top