Version End of Life. 15 Aug 2024
Release 6.1.4 contains a number of improvements and bug fixes, specifically for the tpm command line tool and stability improvements for Composite Active/Active topologies. In addition this release now fully supports the latest binlog compression feature of MySQL 8.0.20.
Improvements, new features and functionality
Improves tpm performance by using more efficient routines to calculate paths.
Issues: CT-1168
Added the ability for tpm diag to skip both individual gather subroutines along with entire groups of gather subroutines.
Also added ability to list all gather groups and subroutines using --list
for use with the --skip
and
--skipgroups
cli arguments.
Issues: CT-1176
tungsten_provision_slave has been rewritten fixing a number of issues in the previous release. This version was previously released as the Beta script prov-sl.sh.
Issues: CT-1208
A number of performance improvements and fixes have been incorporated into the Drizzle Driver used for communication between components and MySQL, these include:
Better handling of large queries close to max network packet size.
Batch Support. Instead of sending statements one by one, the driver will be able to send multiple statements at once, avoiding round trips between the driver and MySQL server.
Fixes issues with interpreting useSSL on connect string URLs.
Issues: CT-1215, CT-1216, CT-1217, CT-1228
The tungsten_send_diag command now accepts arguments for the tpm diag
command using --args
or -a
for short.
You must enclose the arguments in quotes, for example:
shell> tungsten_send_diag -c 9999 -d --args ‘--all -v’
Issues: CT-1220
A new replicator role thl-client
has been added. This new role
allows the replicator to download THL from a Primary, but not apply to the target
database.
Issues: CT-1123
A new delayInMs
filter has been added which allows the applying of
THL to a Replica to be delayed. The filter allows millisecond precision. This filter works in the same
way as the TimeDelayFilter
, however that filter only allow second precision.
Issues: CT-1191
A new droprow
JavaScript filter has been added.
The filter works at ROW level and allows the filtering out of rows based on one or more column/value matches
Issues: CT-1213
Tungsten Replicator can now correctly extract and parse Binary Log entries when the
MySQL option binlog-transaction-compression
has been enabled.
binlog-transaction-compression
is a new parameter introduced from MySQL 8.0.20.
Issues: CT-1223
When a Primary is OFFLINE
or SHUNNED
, we no longer mark the whole
data service as OFFLINE
.
This will allow reading from Replicas to continue even if the Primary is offline.
Issues: CT-1152
In a Composite Active/Active topology, the relay hosts, by default, will pull THL from the remote Primaries. This can
be changed to pull from remote Replica(s) by use of the following setting policy-relay-from-slave=true
This is a change in behaviour. From version 6.0.4 up to and including 6.1.3, the default behaviour was configured to pull from the remote Replica(s).
Issues: CT-1211
In certain edge cases, tungsten_provision_slave would fail to detect if mysql was shutdown.
Issues: CT-1096
The tpm diag command now captures cctrl ls output from the Composite dataservice when appropriate.
Issues: CT-1139
Fixes an issue where affinity specified in the configuration (connector-affinity
)
was ignored since it was not written to user.map
(this affects proxy configurations only).
Issues: CT-1146
tpm diag now collects directories specified with !includedir
in the
/etc/my.cnf
file.
Issues: CT-1153
Fixes the tpm update command, which would exit with the error:
Argument " (error code 1)" isn't numeric
Issues: CT-1165
Fixed a bug where tpm diag would fail to gather some MySQL information on a Composite Active/Active node.
Issues: CT-1167
tpm diag now collects any files specified by !include
directives in the
/etc/my.cnf
and /etc/mysql/my.cnf
files.
tpm diag also looks in /etc/mysql/my.cnf
for !includedir
directives
Issues: CT-1169
Fixes a bug which prevented tungsten_send_diag from uploading a self-generated diagnostic zip file.
Issues: CT-1170
tpm diag now properly derives the correct target path to the releases directory if the home directory in the configuration points to a sym-link.
Issues: CT-1172
Removed tpm diag call to sudo for gathering ifconfig and lsb_release commands.
Issues: CT-1175
tpm update would fail and report errors if deployall had been executed.
Issues: CT-1179
tpm diag no longer requires the mysql command-line client when running on non-MySQL Applier nodes, and no longer attempts to gather any MySQL diagnostic information.
Issues: CT-1188
Removes the requirement to execute component start/stop commands with sudo when called through systemd.
This is specific to start/stop actions following the use of the deployall scripts.
Issues: CT-1193
Fixed a bug in tungsten_post_process where the /etc/tungsten/tungsten.ini
file would not be read properly. Also adds two warnings for skipped entries and corrects a typo in the property definitions.
Issues: CT-1198
Fixes cases where tpm fails when the OS hostname
command
returns a different string than what is used in the configuration (i.e. hostname
returns a FQDN, yet the configuration contains shortnames like db1, db2, etc.).
Issues: CT-1206
In certain cases, after a reprovision, tungsten_provision_slave didn’t always run the steps to reset the local replicator service. This made the replicator go into an error state after provision had completed.
Issues: CT-1210
The tpm diag command now handles the cluster-slave topology more gracefully, and properly handles cluster nodes without the Connector installed.
Improved output text clarity by converting multiple verbose-level outputs to debug, and warnings to notice-level.
Issues: CT-1222
tpm diag now gathers sym-linked files correctly.
Issues: CT-1232
Fixes a situation where tpm update exits with a Data::Dumper
error.
Issues: CT-1249
Tungsten Replicator could wrongly think it is already in DEGRADED
mode when trying to put it into DEGRADED
state.
Issues: CT-1131
When host server time (and thus MySQL time) is not configured as UTC, issuing cluster heartbeat or trepctl heartbeat in the first hours around daylight savings time would create an invalid time in MySQL.
For more information on timezones when issuing heartbeats, see Section 9.23.3.7.1, “trepctl heartbeat Time Zone Handling”
Issues: CT-1174
Due to a change in the Binary log structure introduced in MySQL 8.0.16, the replicator would fail to extract transactions for Partitioned tables.
Issues: CT-1201
The replicator would fail to correctly parse statements with leading comment blocks in excess of 200 characters.
Issues: CT-1236
Fixed an issue where connector client-list and the Proxy-mode command, tungsten show processlist,
would report NullPointerException
errors when listing disconnected client applications.
Issues: CT-1177
When in proxy mode and fetching data source configuration at startup, the Connector will now properly parse, and use, affinity (and other URL options if any) to establish the connection.
Issues: CT-1212
Fixes an issue where connections with multiple affinity would not keep the current channel and reconnect to the database server while the connection could be reused.
Issues: CT-1250
In certain edge case situations, the manager could choose a manually shunned node as a viable node during failover.
Issues: CT-1115
Issuing cluster topology validate
within cctrl would fail
if the cluster contained an Active Witness host.
Issues: CT-1180
Piping multiple commands to cctrl that would affect components in a remote cluster would fail, for example:
shell> echo "use east; replicator db5 offline" | cctrl
Issues: CT-1209
Resolves an edge case in a Composite Active/Passive topology, with 2 or more Composite Passive dataservices, where a switch of a relay node in a single Replica service would incorrectly reconfigure all relays in the other Replica services.
Issues: CT-1214