puppetlabs/puppetlabs-mysql — pull request #505 by larsks (2014-05-01 16:03:54+00:00)
Title: lowercase hostname values in qualified usernames

MySQL/MariaDB automatically downcase hostnames:

MariaDB [mysql]> create user 'testuser'@'HOSTNAME';
MariaDB [mysql]> select user,host from user where host = 'hostname';
+----------+----------+
| user | host |
+----------+----------+
| testuser | hostname |
+----------+----------+

This causes problems when a mysql_user or datbase_user has an hostname
with non-lowercase characters:

database_user { "root@HOSTNAME":
ensure => absent,
}

The SELECT statements used to determine if the user exists will fail
because the comparisons use "HOSTNAME" but the database has "hostname".
This patch forces the hostname part of "user@hostname" to lower case in
the custom type definitions.