Skip to main content
Tungsten Clustering

Tungsten Clustering 6.1.4

Build: 51
Release Date: 12 Sept 2025
End of Life Date: 15 Aug 2024
Product End of Life

This release is past End of Life.

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 (11)

Command-line Tools (5)

  • Improves tpm performance by using more efficient routines to calculate paths.
    Issue: 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.
    Issue: 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.
    Issue: 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 diagcommand 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’
    Issue: CT-1220

Core Replicator (4)

  • 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.
    Issue: 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 allows second precision.
    Issue: 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
    Issue: 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.
    Issue: CT-1223

Manager (2)

  • When a Primary is OFFLINE or SHUNNED, we no longer mark the whole data service as OFFLINE.
    Note
    This will allow reading from Replicas to continue even if the Primary is offline.
    Issue: 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.slave.promotion.latency.threshold=true
    Note
    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).
    Issue: CT-1211

Bug Fixes (30)

Command-line Tools (19)

  • In certain edge cases, tungsten_provision_slave would fail to detect if mysql was shutdown.
    Issue: CT-1096
  • tpm diag now collects directories specified with !includedir in the/etc/my.cnf file.
    Issue: CT-1153
  • Fixes the tpm update command, which would exit with the error:
    Argument " (error code 1)" isn't numeric
    Issue: CT-1165
  • 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
    Issue: CT-1169
  • Fixes a bug which prevented tungsten_send_diag from uploading a self-generated diagnostic zip file.
    Issue: 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.
    Issue: CT-1172
  • Removed tpm diag call to sudo for gathering ifconfig and lsb_release commands.
    Issue: CT-1175
  • tpm update would fail and report errors if deployall had been executed.
    Issue: 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.
    Issue: 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.
    Issue: CT-1193
  • Fixes cases where tpm fails when the OS hostname command returns a different string than what is used in the configuration (i.e. hostnamereturns a FQDN, yet the configuration contains shortnames like db1, db2, etc.).
    Issue: 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.
    Issue: 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.
    Issue: CT-1222
  • tpm diag now gathers sym-linked files correctly.
    Issue: CT-1232
  • Fixes a situation where tpm update exits with a Data::Dumper error.
    Issue: CT-1249
  • The tpm diag command now captures ls output from the Composite dataservice when appropriate.
    Issue: 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).
    Issue: CT-1146
  • Fixed a bug where tpm diag would fail to gather some MySQL information on a Composite Active/Active node.
    Issue: CT-1167
  • Fixed a bug in tungsten_post_process where the /etc/tungsten/tungsten.inifile would not be read properly. Also adds two warnings for skipped entries and corrects a typo in the property definitions.
    Issue: CT-1198

Core Replicator (4)

  • Tungsten Replicator could wrongly think it is already in DEGRADEDmode when trying to put it into DEGRADED state.
    Issue: 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.
    Issue: 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.
    Issue: CT-1201
  • The replicator would fail to correctly parse statements with leading comment blocks in excess of 200 characters.
    Issue: CT-1236

Connector (3)

  • Fixed an issue where connector client-list and the Proxy-mode command, tungsten show processlist, would report NullPointerException errors when listing disconnected client applications.
    Issue: 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.
    Issue: 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.
    Issue: CT-1250

Manager (4)

  • In certain edge case situations, the manager could choose a manually shunned node as a viable node during failover.
    Issue: CT-1115
  • Issuing cluster topology validate within cctrl would fail if the cluster contained an Active Witness host.
    Issue: 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
    Issue: 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.
    Issue: CT-1214