[openstack-dev] UTF-8 required charset/encoding for openstack database?

Chris Friesen chris.friesen at windriver.com
Mon Mar 10 17:24:29 UTC 2014


Hi,
I'm using havana and recent we ran into an issue with heat related to 
character sets.
In heat/db/sqlalchemy/api.py in user_creds_get() we call
_decrypt() on an encrypted password stored in the database and then try 
to convert the result to unicode. Today we hit a case where this 
errored out with the following message:
UnicodeDecodeError: 'utf8' codec can't decode byte 0xf2 in position 0: 
invalid continuation byte
We're using postgres and currently all the databases are using SQL_ASCII 
as the charset.
I see that in icehouse heat will complain if you're using mysql and not 
using UTF-8. There doesn't seem to be any checks for other databases 
though.
It looks like devstack creates most databases as UTF-8 but uses latin1 
for nova/nova_bm/nova_cell. I assume this is because nova expects to 
migrate the db to UTF-8 later. Given that those migrations specify a 
character set only for mysql, when using postgres should we explicitly 
default to UTF-8 for everything?
Thanks,
Chris


More information about the OpenStack-dev mailing list

AltStyle によって変換されたページ (->オリジナル) /