Starting in v2.0.11, several mysql-default_* variables are empty in the runtime table, even after LOAD MYSQL VARIABLES TO RUNTIME. The corresponding values in memory are not written to runtime. Among the variables affected are all of the character set and collation variables, as well as mysql-default_sql_safe_updates. (These are just the ones I happened to try; I did not try all of them.)
Below are queries showing the issue. These were all run on fresh Docker images with the brand-new, out-of-the-box config with no changes or modifications. This capture happens to be from 2.0.12, but 2.0.11 seemed the same, whereas 2.0.10 (and several other previous versions I tried) appears to be OK.
Fresh out of the box, memory and runtime are different:
Nothing of note appears in the default log/output other than these warnings:
2020-06-12 17:16:43 ProxySQL_Admin.cpp:5458:flush_mysql_variables___database_to_runtime(): [WARNING] The default_CHARSET set to invalid value in the configuration file. Changing to default utf8
2020-06-12 17:16:43 ProxySQL_Admin.cpp:5458:flush_mysql_variables___database_to_runtime(): [WARNING] The default_character_set_results set to invalid value in the configuration file. Changing to default utf8
2020-06-12 17:16:43 ProxySQL_Admin.cpp:5458:flush_mysql_variables___database_to_runtime(): [WARNING] The default_character_set_connection set to invalid value in the configuration file. Changing to default utf8
2020-06-12 17:16:43 ProxySQL_Admin.cpp:5458:flush_mysql_variables___database_to_runtime(): [WARNING] The default_character_set_client set to invalid value in the configuration file. Changing to default utf8
2020-06-12 17:16:43 ProxySQL_Admin.cpp:5458:flush_mysql_variables___database_to_runtime(): [WARNING] The default_character_set_database set to invalid value in the configuration file. Changing to default utf8
2020-06-12 17:16:43 ProxySQL_Admin.cpp:5458:flush_mysql_variables___database_to_runtime(): [WARNING] The default_charset set to invalid value in the configuration file. Changing to default utf8
...
2020-06-12 17:17:08 ProxySQL_Admin.cpp:5475:flush_mysql_variables___database_to_runtime(): [WARNING] Impossible to set variable server_capabilities with value "569867". Resetting to current "569899".
Hi @jhriggs .
Thank you for the report.
This is a know issue, fixed in https://github.com/sysown/proxysql/pull/2866 .
A lot of these variables are deprecated.
I will merge it to 2.0.13 after adding further testing.
Starting in v2.0.11, several
mysql-default_*
variables are empty in the runtime table, even afterLOAD MYSQL VARIABLES TO RUNTIME
. The corresponding values in memory are not written to runtime. Among the variables affected are all of the character set and collation variables, as well asmysql-default_sql_safe_updates
. (These are just the ones I happened to try; I did not try all of them.)Below are queries showing the issue. These were all run on fresh Docker images with the brand-new, out-of-the-box config with no changes or modifications. This capture happens to be from 2.0.12, but 2.0.11 seemed the same, whereas 2.0.10 (and several other previous versions I tried) appears to be OK.
Fresh out of the box, memory and runtime are different:
Try loading the data from memory to runtime (still empty):
Save runtime to memory (now the memory values are empty too):
Nothing of note appears in the default log/output other than these warnings: