#27321: ignores_quoted_identifier_case broken on MySQL on OS X/Windows
----------------------------------------------+----------------------------
Reporter: Adam Chainz | Owner: nobody
Type: Bug | Status: new
Component: Database layer (models, ORM) | Version: 1.10
Severity: Normal | Keywords: mysql, mariadb
Triage Stage: Unreviewed | Has patch: 0
Easy pickings: 0 | UI/UX: 0
----------------------------------------------+----------------------------
#26781 added `test_alter_db_table_case` which presumes that table names
are case sensitive. MySQL and MariaDB rely on the underlying filesystem to
provide case sensitivity, as well as a setting, as per
https://dev.mysql.com/doc/refman/5.7/en/identifier-case-sensitivity.html
and https://mariadb.com/kb/en/mariadb/identifier-case-sensitivity/ . Thus
it fails on OS X where the default filesystem is case insensitive, with:
{{{
django.db.utils.InternalError: (1050, "Table 'SCHEMA_AUTHOR' already
exists")
}}}
I can't find any good information on whether PostgreSQL depends on
filesystem case sensitive or not. All the results I found in five minutes
of Googling seem to relate to whether it's syntactically case sensitive,
and suggest it lowercases all table names in queries unless they are
double-quoted, which would make renaming a table to uppercase a no-op.
This would mean `ignores_quoted_identifier_case` should be `True` for
MySQL with its data directory mounted on a case insensitive filesystem.
The only way to reliably check this would be to try create two tables with
names that differ only in case and seeing if the second one failed..
--
Ticket URL: <https://code.djangoproject.com/ticket/27321>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/053.6860130c7f7458c2331b6ad0e7153da1%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.