Releases: percona/proxysql-admin-tool
v1.4.14
Release date: February 8, 2019
Improvements
- PSQLADM-130 proxysql_galera_checker script should consider user's custom max_connections setting
Added an additional option to specify the value for the max_connections field in
the mysql_servers table.
This feature follows the rules below:
- if specified on the proxysql-admin command line (with
--max-connections=2000
, this option will be set in the scheduler, and thus proxysql_galera_checker will always use this value (over the config file). - if not specified on the command line the scheduler will not use this option, thus the value will be taken from the config file (use
export MAX_CONNECTIONS="2000"
). - Otherwise if the value is not specified in the config file, the default value of 1000 is used.
-
The syncusers command now supports MariaDB 10.3
Thanks to @jonaskint for this. -
Fixed some typos
Thanks to @yang-xiaodong for this.
v1.4.13
Release date: January 10, 2019
Improvements
-
PSQLADM-53 proxysql-admin verification on --write-node
Added a check to ensure that the IP address and port is specified in the --write-node option.
Previously, an entry without a port would still be accepted but wouldn't work correctly. -
PSQLADM-122 Add slave nodes in reader node count in galera/node monitor log.
Added extra output for async slave nodes. -
BLD-1211 Add cosmic support for proxysql
Bug fixes
-
PSQLADM-124 Default ERR_FILE should not be /dev/null
If an error occurs early in the proxysql_galera_checker script, the error would be lost. Set the default log file to /dev/stderr so that the error shows up in proxysql.log. -
PSQLADM-126 Script is showing an error when --syncusers is invoked
When working with a proxysql instance with no users in the mysql_users table, an error would occur. Modified the code to work correctly with empty data. -
PSQLADM-127 proxysql_galera_checker corrupts scheduler configuration after restart
Fixed an issue where the scheduler configuration would be overwritten with bad data when proxysql is stopped and restarted. -
PSQLADM-128 Stopping/Restarting ProxySQL can lead to multiple instances running at the same time
Fixed an issue where multiple copies of proxysql_galera_checker could run at the same time.
v1.4.12
Release date: November 12, 2018
Improvements
-
PSQLADM-68 Make scripts IPv6 compatible
The proxysql-admin, proxysql_galera_checker, and proxysql_node_monitor scripts are now compatible with PXC hosts using IPv6 addresses. The testsuites have also been updated to use IPv6 addresses (the testsuite can now be started with the '--ipv6' option). -
PSQLADM-107 include-slaves - do not move slaves into write hostgroup even if the whole cluster went down.
A new option has been added '--use-slave-as-writer'. If 'yes' then a slave will be moved to the write-hostgroup if all cluster nodes are down. If 'no' then the slaves will be kept in the read-hostgroup. This option is now required if --include-slaves is used.
Bug fixes
-
PSQLADM-103 /bin/proxysql_galera_checker: line 514: $7: unbound variable
Updated the help text to include new options (--log-text and --debug) -
PSQLADM-104 proxysql-admin testsuite bug fixes.
The user is now set in the .cnf files for the testsuite (this allows the testsuite to be run as root). -
PSQLADM-110 Pattern cluster hostname does not work with proxysql-admin script.
Fixed an issue where bad input (using '%' as a hostname) would cause script errors. -
PSQLADM-112 proxysql_galera_checker: line 1978 P_MODE unbound variable
Fixed an issue where a variable was being used before it had a value. -
PSQLADM-113 proxysql_galera_checker assumes parameters given in long format
The scripts assumed the long format for the write hostgroup parameter (--write-hg). We now check for the short form also (-w) -
PSQLADM-115 proxysql_node_monitor fails with more than one command in scheduler
Fixed an issue in the node monitor script if two commands with different intervals were found in the scheduler. -
PSQLADM-116 Scheduler is reloading servers on every run
Fixed a performance issue where the scheduler was causing the mysql_servers table to be reloaded every run -
PSQLADM-117 --syncusers doesn't work when enabling cluster
Fixed a regression where --syncusers didn't work with --enable. Now --syncusers can be used with --enable. -
PSQLADM-120 /bin/proxysql_galera_checker: line 514: $7: unbound variable
Fixed an issue where the script would fail with unhelpful errors in some network failure scenarios. -
PSQLADM-125 The function "check_is_galera_checker_running" isn't preventing multiple instances of the script running
Fixed an issue where multiple instances of the proxysql_galera_checker would continue to run (when they shouldn't be allowed to run).
v1.4.11
Release date: October 18, 2018
No changes were made to the proxysql-admin-tool.
ProxySQL was updated to 1.4.11
The proxysql-admin-tool versions were updated to 1.4.11
v1.4.10
Release date: September 20, 2018
Improvements
-
PSQLADM-12 Implemented WRITER_IS_READER
Implemented the writer-is-reader option in proxysql-admin. This is now a text option: 'always', 'never', and 'ondemand' -
PSQLADM-64 --syncuser should not remove current users
Added an option, --sync-multi-cluster-users, that uses the same function as --sync-usesrs, but will not delete users on ProxySQL that don't exist on MySQL -
PSQLADM-90 Added testsuites for host priority/slave/loadbal/writer-is-reader features
-
PSQLADM-97 Ensure test cases work with 5.6
Added tests suites for regression testing. -
Additional debugging support
An additional --debug flag on scripts prints more output. All SQL calls are now logged if debugging is enabled. -
Tool enhancements: proxysql-status
proxysql-status now reads the credentials from the proxysql-admin.cnf file
Also added the ability to look only at certain tables (--files, --main, --monitor, --runtime, --stats)
Also added the ability to filter based on the table name (--table) -
Tool enhancements: tests directory
Added extra tests. Also the proxysql-admin-testsuite.sh can now be used to create test clusters ('proxysql-admin-testsuite.sh --no-test --cluster-one-only', this option will create a 3-node PXC cluster with 1 async slave and will start proxyxql also). Also added regression test suites. -
Tool enhancements: tools directory
Added extra tools that can be used for debugging (mysql_exec, proxysql_exec, enable_scheduler, and run_galera_checker).
Bug fixes
-
PSQLADM-73 proxysql-admin is not testing the monitor user
proxysql-admin now checks that the monitor user has been configured on the PXC nodes. -
PSQLADM-82 proxysql-admin without-check-monitor-user is confusing
without-check-monitor-user is confusing as it does check the monitor user (even if this is enabled). Removed this option and replaced it with use-existing-monitor-password. -
PSQLADM-83 proxysql_galera_checker fails on an empty scheduler
Fixed, proxysql_galera-checker no longer hangs if there is no scheduler entry. -
PSQLADM-87 proxysql_galera_checker ignoring pxc_maint_mode
Fixed a bug where proxysql_galera_checker was not moving a node to OFFLINE_SOFT if pxc_maint_mode was set to "maintenance" -
PSQLADM-88 proxysql_node_monitor was searching among all hosts not just the read hostgroup
Fixed a bug where we were searching among all nodes, not just the read hostgroup. -
PSQLADM-91 priority nodes are not being picked up on basis of priority
Fixed a bug where nodes in the priority list were not being picked. -
PSQLADM-93 settings in the config files can conflict with each other
Fixed a bug where if mode='loadbal', then the read_hostgroup setting would be used from the config file, rather than being set to -1. -
PSQLADM-96 Centos uses /usr/share/proxysql rather than /var/lib/proxysql
Have quick-demo also check /usr/share/proxysql -
PSQLADM-98 Checking connection status to PXC nodes can stall the script
Fixed a bug where checking the PXC node status could stall (this call now uses a TIMEOUT)
v1.4.9
Release date: July 16, 2018
Improvements
-
BLD-1068 Append -percona to proxysql version
Added "-percona" to the proxysql version to indicate Percona built version. -
PSQLADM-31 Handle multiple proxysql instances in proxysql-admin
Added the ability to use multiple proxysql instances on the same server. -
PSQLADM-62 silent mode
Added the --without-check-monitor-user option which configures proxysql without prompting/creating the monitor user (allows for automated deployment scenarios). -
PSQLADM-63 host_priority on multiple clusters
Added the ability to set host_priority on multiple clusters using the same proxysql instance.
Bug fixes
-
BLD-1077 Can't set limits for proxysql on systemd systems
Open file limits can now be set on systemd systems. -
PSQLADM-56 "--syncuser" option was using a hardcoded hostgroup
proxysql-admin now uses the WRITE_HOSTGROUP_ID variable rather than a hardcoded value. -
PSQLADM-57 proxysql-admin requires to run as root
Removed requirement for tool to run as root, instead check for needed permissions to access configuration files/directories. -
PSQLADM-58 Monitor user password rotation leads to cluster being read only
Added code to check if the proxysql password is the same as the PXC monitor password. -
PSQLADM-67 With singlewrite mode, Galera checker is not changing writer hostgroup id when nodes become ONLINE from OFFLINE_SOFT
Fixed a bug where changing the monitor user password may lead to making the entire cluster read-only. -
PSQLADM-69 Reading multiple cluster names from the scheduler if write hostgroup matches.
Fixed a bug with incorrect pattern matching, causing multiple clusters to be returned depending on the hostgroup id. -
PSQLADM-70 proxysql-admin --syncusers do not support multiple clusters in the same proxysql instance.
Do not allow syncusers to delete users if they are from a different hostgroup.
v1.4.8
Release date: April 22, 2018
Usability improvement.
- PR #84 : Now proxysql-status tool dump host_priority and proxysql-admin.cnf. Also changed output format.
Bug fixes
-
Fixed PR #66 :
--syncusers
will update the user password in proxysql database if there is any password difference between proxysql user and mysql user . -
Fixed PSQLADM-45 : config-file option requires an argument but that's not visible from help screen.
-
Fixed PSQLADM-48 : ${PROXYSQL_DATADIR}/${CLUSTER_NAME}_mode file will be missing with ProxySQL-admin upgrade (1.4.5 or before to 1.4.6 onwards).
-
Fixed PSQLADM-52 : The proxysql_galera_checker script is not checking empty query rules.
-
Fixed PSQLADM-54 : proxysql_node_monitor is not changing OFFLINE_HARD status properly when the node comes back online.
v1.4.7
Release date: April 13, 2018
Usability improvement
Added proxysql-status tool to dump ProxySQL config and stats.
Bug fixes
-
Fixed PSQLADM-2 : proxysql_galera_checker doesn't check if another instance of itself is already running.
PSQLADM-2 Note:
As proxysql_galera_checker runs in regular intervals, there is the possibility of a race condition in certain circumstances, for example starting this script twice or more at the same time. To avoid such situations from occurring, a Galera process identifier check file was added, which will prevent duplicate script execution in most cases. Still, it may be possible in some rare cases to circumvent this check if you execute more then one copy of proxysql_galera_checker simultaneously. Please note that running more than one copy of proxysql_galera_checker
in the same runtime environment at the same time is not supported, and may lead to undefined behavior. -
Fixed PSQLADM-40 : ProxySQL scheduler generates many proxysql_(galera_checker|node_monitor) processes with wrong proxysql credentials.
-
Fixed PSQLADM-41 : Improve timeout error handling.
-
Fixed PSQLADM-42 : Inconsistent date format in ProxySQL and scripts.
-
Fixed PSQLADM-43 : proxysql_galera_checker does not account for special chars in mysql-monitor_password.
-
Fixed PSQLADM-44 : proxysql_galera_checker errors in proxysql.log file if wrong credentials passed.
-
Fixed PSQLADM-46 : script wrongly splitting host/port.
v1.4.6
Release date: March 9, 2018
Usability improvement
-
PSQLADM-32 : Updated proxysql-admin script to configure multiple clusters in proxysql;
Now, proxysql-admin can configure multiple clusters in proxysql.
Pre-requisites to configure multiple clusters in proxysql.
- Cluster name (wsrep_cluster_name) should be unique.
- proxysql-admin.cnf configuration differences
- ProxySQL READ/WRITE hostgroup should be different for each cluster.
- Application user should be different for each cluster.
PS: Host priority feature does not work with multiple clusters. It works only with a single cluster.
-
PR #81 : Added more testcases in proxysql-admin test-suite
Bug fixes
- Fixed PSQLADM-35 : proxysql_galera_checker cannot discover the new writer.
- Fixed PSQLADM-36: Upgrade to 1.4.5 broken.
- Fixed #79 : Propertly quote MONITOR_USERNAME in admin script query
v1.4.5
Release date: February 15, 2018
Usability improvement
PSQLADM-6 : If cluster node goes offline proxysql_node_monitor script will set the node status as OFFLINE_HARD. The script will not remove the cluster node from proxysql db. Also, logging will be consistent regardless of cluster node online status
PSQLADM-30: Added validation for host priority file.
PSQLADM-33: Added --proxysql-datadir option to run proxysql-admin script with custom proxysql datadir
PQA-162 : Added BATS testsuite for proxysql-admin testing
Bug fixes
Fixed PSQLADM-5: proxysql-admin and PXC mode specified with --mode isn't persist
Fixed PSQLADM-8: ProxySQL High CPU load when mysqld hangs