Open jantman opened 1 year ago
Possible quickfix could imho be in lib/puppet/provider/mysql.rb to adjust mysql_caller. There add a version-compare if mariadb newer than 11.0.0 is used. Then use mariadb_raw instead of mysql_raw (copy those lines). And define a command mariadb_raw of course. Maybe there is a cleaner solution, but for the moment it worked for me.
The mysql command with MariaDB 11 is a symlink to the mariadb command. So probably a cleaner check will be to check if the mysql_caller is a symlink to mariadb and then use it, or just use the target of the link. Or just ignore the stderr that shows the deprecation message.
The mysql command with MariaDB 11 is a symlink to the mariadb command. So probably a cleaner check will be to check if the mysql_caller is a symlink to mariadb and then use it, or just use the target of the link.
@ajdelgado : As explained in the warning: "It will be removed in a future release". Your proposal is working for now but will be obsolete when MariaDB will remove this symlink.
true, closing this PR
Describe the Bug
MariaDB 11 is out, and has deprecated the
mysql
(andmysqldump
andmysqladmin
) commands in favor ofmariadb
commands. Themysql
commands now issue a deprecation message when used, which breaks the provider. e.g.:And if we just run
mysql
directly on the command line:Expected Behavior
The provider will work, without throwing errors because of the deprecation message. Ideally, the provider will detect the presence of
mariadb
(etc.) commands and prefer those overmysql
commands (at least if the engine that's running is MariaDB). Or, failing that, the provider won't error out on the deprecation message.Steps to Reproduce
mysql
binary.Environment