[SRU] dns_domains table mysql charset is 'latin1'. Should be 'utf8'
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Medium
|
Dan Prince | ||
Essex |
Fix Released
|
Undecided
|
Unassigned | ||
nova (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Precise |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
After creating an OpenStack Essex MySQL schema only a single table uses the 'latin1' charset by default: dns_domains.
We should refactor this table format in Folsom such that dns_domains properly supports getting converted to utf8 like everything else.
To reproduce you can do the following in a python-migrate script:
# NOTE(dprince): Trying to create a fresh utf8 dns_domains tables
# with a domain primary key length of 512 fails w/
# 'Specified key was too long; max key length is 767 bytes'.
dns_domains = Table('
)
----
I think one solution would be to quit using 'domain' as the primary key and instead just create an index on the 'domain' column. Having a monotonically increasing primary key is often a good idea anyway.
Related branches
- Chuck Short: Pending requested
-
Diff: 56 lines (+14/-4)3 files modifieddebian/changelog (+8/-0)
debian/control (+6/-3)
debian/nova-console.install (+0/-1)
Changed in nova: | |
assignee: | nobody → Dan Prince (dan-prince) |
status: | New → In Progress |
Changed in nova: | |
importance: | Undecided → Medium |
tags: | added: db |
Changed in nova: | |
milestone: | none → folsom-1 |
Changed in nova: | |
status: | Fix Committed → Fix Released |
Changed in nova (Ubuntu): | |
status: | New → In Progress |
Changed in nova (Ubuntu Precise): | |
status: | New → In Progress |
summary: |
- dns_domains table mysql charset is 'latin1'. Should be 'utf8' + [SRU] dns_domains table mysql charset is 'latin1'. Should be 'utf8' |
tags: |
added: verification-done removed: verification-needed |
Changed in nova (Ubuntu): | |
status: | In Progress → Fix Released |
Changed in nova: | |
milestone: | folsom-1 → 2012.2 |
I think you meant create a unique index on the 'domain' column, but yeah, I agree that 'domain' shouldn't be the primary key in this case.