Tungsten Clustering 7.2.0
Deprecation Notices (1)
The following features/tools have been deprecated from this release and will be removed in future releases. Any self written scripts that utilise these features should be updated.
Command-line Tools (1)
tungsten_health_checkandtungsten_provision_thlhave been deprecated and will be removed in a future releaseIssue: CT-2506
Behavior Changes (10)
The following changes may affect existing scripts and integration tools. Any scripts or environment which make use of these tools should check and update for the new configuration:
Installation and Deployment (2)
tpm validatenow verifies localhost is defined in/etc/hostsIssue: CT-2564- All Tungsten Components now use log4j version 2.Issues: CT-1410, CT-1412
Command-line Tools (4)
- The
tpm cert infocommand now provides better error messages when a specifiedtypeSpecfile does not exist.Issue: CT-2530 The
tpm askcommand now returns the appropriate values for keys:stagingdir,stagingpath,staginghostandstaginguser.Additionally, the
tpm ask stagingcommand will return a JSON structure with all values. All values are the same as the output of thetpm query-stagingcommand, just presented differently for easier machine usage.Issue: CT-2510- Removed
sigtrapmodule dependency fromtungsten_find_orphaned.Issue: CT-2451 - The
tungsten_send_diagcommand has been updated with new security keys and the ability to accept security keys on the CLI.Issue: CT-2438
Connector (1)
- Connector now always reads its dynamic (auto-detect) configuration from primary node by default. Reading from a replica is still possible using the
property=readAutodetectConfigFromPrimary=falsetpmflag.Issue: CT-2527
Security (2)
- As of version 7.2.0 onwards, when providing custom keystores, the alias of the mysql certificate must be provided as
java-mysql-alias=xxxand must have the same name in bothtungsten_keystoreandtungsten_connector_keystore.Issue: CT-2598 - Now providing adequate error message when TLS certificates differ between connector and managers, or when manager refuses the SSL handshake.Issue: CT-2579
API (1)
- The Manager APIv2 now returns a 404 error instead of 500 when a task status is requested for a TaskID that does not exist inside that Manager process.Issue: CT-2430
Known Issue (1)
The following issues are known within this release but not considered critical, nor impact operation. They will be addressed in a subsequent patch release.
Security (1)
tungsten_mysql_ssl_setupincorrectly generates self-signed CA certificates on RHEL9 Linux flavors.This will be fixed in v7.2.0 and v8.0.1
Issue: CT-2581
Improvements, new features and functionality (13)
Installation and Deployment (1)
- Introduced a new set of
tpmgroup aliases to control the rest api configuration when the same value needs applying to multiple properties, as follows:rest-apiswill setconnector-rest-api,manager-rest-apiandreplicator-rest-apirest-api-addresswill setconnector-rest-api-address,manager-rest-api-addressandreplicator-rest-api-addressrest-api-authenticationwill setconnector-rest-api-authentication,manager-rest-api-authenticationandreplicator-rest-api-authenticationrest-api-sslwill setconnector-rest-api-ssl,manager-rest-api-sslandreplicator-rest-api-ssl
/etc/tungsten/tungsten.inimay look like the following:BEFOREAFTER[defaults]...connector-rest-api=truemanager-rest-api=truereplicator-rest-api=trueconnector-rest-api-adddress=0.0.0.0manager-rest-api-adddress=0.0.0.0replicator-rest-api-adddress=0.0.0.0connector-rest-api-authentication=truemanager-rest-api-authentication=truereplicator-rest-api-authentication=trueconnector-rest-api-ssl=truemanager-rest-api-ssl=truereplicator-rest-api-ssl=true...[defaults]...rest-apis=truerest-api-adddress=0.0.0.0rest-api-authentication=truerest-api-ssl=true...Issue: CT-2459
Command-line Tools (6)
- The
tpm askcommand will now convert values0andfalsetoNoand values1andtruetoYesas human output when given--humanor-ncli args.Issue: CT-2559 - The
tpm inicommand now handles all new tpm options.Issue: CT-2543 - Issue: CT-2499
- The
tpm certcommand will now handle public key files. The commandtpm cert gen publicwill create$CONTINUENT_HOME/generated/tungsten_public.jksfrom the$CONTINUENT_HOME/share/tungsten_keystore.jksfile and thetpm cert list publiccommand will show the contents, etc.Issue: CT-2434 - The
tpm askcommand now supports the-s|--serviceoption fordsrole,dsstate,trroleandtrstatekeys. The option alias for--shortis now-S(capitalized), was previously lower-case. Example:tpm ask dsrole --service alphaIssue: CT-2400 - The new
tpm inicommand allows for easy creation, checking and administration of the &definifile; configuration file.Issue: CT-2366
Core Replicator (2)
- The
trepctl perfoutput has been improved when parallel apply is enabled to show granular statistics per channel.Issue: CT-2517 - Replicator now recognizes the new MySQL 8.4
show binary log statussyntax (as well asshow master status) and will execute the configured replacement request appropriately.Issue: CT-2291
Connector (2)
- Connector now recognizes the new MySQL 8.4
show replica statussyntax (As well asshow slave status) and will run replacement configured request appropriately.Issue: CT-2401 - Fixed a bug where connections properly disconnecting with quit command would get an empty database change request.Issue: CT-2395
Security (1)
- Tungsten can now hold two MySQL database SSL Certificates, allowing rotation of certificates without the need for downtime. A new command line tool,
rotate_certs, is provided to aid in this process.Issue: CT-2511
Monitoring (1)
- Additional prometheus metrics have been added to the Replicator:
tungsten_replicator_service_online_duration_secondsgauge show duration in seconds since the replicator was put online.tungsten_replicator_task_totalcounter shows statistics by service, stage and task as shown in the following example:In this case, this is the extract time spent by the task #1 of the q-to-dbms stage of the alpha service. This is similar to the new trepctl perf output.tungsten_replicator_task_total{service="alpha",stage="q-to-dbms",task_id="1",stat="extract_time",} 250.015
Issue: CT-2514
Bug Fixes (27)
Installation and Deployment (2)
tpmflagsdatasource-log-directoryandrepl-direct-datasource-log-directorywill now use the value of each other as a default if only one is specifiedIssue: CT-2425- The
tpm updatecommand no longer displays the message"common::diffPasswordsDotStore: No custom source passwords.store file defined - SKIPPING"Issue: CT-2406
Command-line Tools (19)
- The
tapicommand no longer issues an error when the quantity of command-line arguments is larger than expected.Issue: CT-2580 - The
tpm purge-thlcommand now works properly when run against environments where there are multiple THL files, but the lowest seqno returned exists in the very first THL file.Issue: CT-2561 - The
tpm cert infocommand now properly handles all available typeSpecs.Issue: CT-2532 - The
tpm cert aliases --runningcommand now properly handles thetls_passwordstoreandjmx_passwordstoretypeSpecs.Issue: CT-2512 - Fixes an issue where
dsctl setwith the-resetoption could show warnings when run several times in a row, as shown:WARNING: Could not execute query DROP TABLE `tungsten_alpha`.`heartbeat` : Unknown table 'tungsten_alpha.heartbeat'Issue: CT-2502 - The
tungsten_send_diagcommand now handles curl andaws s3errors separately and displays the proper message back.Issue: CT-2488 - During a
tpm uninstall, when skipping data services not managed locally,tpmwill now print a notice rather than a warning, since this is the expected behavior.Issue: CT-2479 - The
tpm ask versionandtpm ask versionscommands now display values.Issue: CT-2475 executable-prefixis now applied to thedeployallandundeployallscript names. For example, whenexecutable-prefix=mm,deployallwould be namedmm_deployall.Issue: CT-2467- The
tpm keepcommand is now properly called bytpm uninstall, and a regression in a call to the mysql cli has been fixed as well.Issue: CT-2462 The tpm updatecommand now properly identifies and removes services with mixed-case service names.Issue: CT-2426tpmnow properly detects MariaDB default settings.Issue: CT-2424- The
tapicommand now accepts non-standard ports on the command line, and also properly accepts a user/password pair on the CLI.Issue: CT-2420 - The
tungsten_get_statuscommand now passes the correct number of arguments to theprintffunction in various places, preventing"Redundant argument"warnings.Issue: CT-2407 - The
tpm delete-serviceandtpm updatecommands now correctly remove Composite Active/Active cross-site subservices from cctrlIssue: CT-2404 - The
tpm diagcommand now gathers:tungsten-replicator/log/replicator-api.logtungsten-connector/log/connector-api.logtungsten-manager/log/manager-api.log
Issue: CT-2397 - The
tapicommand now creates proper URL's for these standard endpoints when-C,-Mor-Rare specified along with one of the following strings:ping,tungstenVersion,createAdminUser,deleteAdminUser,listAdminUsers,rmiSecurityoruser.Issue: CT-2391 - The
tpm check portsandtpm check ports -ccommands are now able to handle replicator-only nodes. By default, it will automatically try to discover the node type, and you may manually specify the node type with-r|--replicatoror-c|--cluster.Issue: CT-2356 - The
tpm diagcommand no longer displays a NOTICE for missing optional files.Issue: CT-2355
Core Replicator (3)
- Fixed an issue where a cluster could display a wrong latency after MySQL and the replicator were stopped and restarted. This would only show under no load conditions.Issue: CT-2485
- The replicator will now properly rollback an XA transaction in case of failure.Issue: CT-2410
- Fixed an issue that would wrongly flag a SQL statement starting with a
#comment as bidi_unsafeIssue: CT-2405
Connector (3)
- The
tpm delete-servicecommand now sets MAINTENANCE mode before operations, then sets back to AUTOMATIC if it wasAUTOMATIC to start with.Issue: CT-2555 - In active/active setups, no longer using global data service for
show slave latencyconnector intercept.Issue: CT-2554 - Fixed an issue with PHP and
caching_sha2_passwordwhen using proxy mode: the protocol part "fast path" was not handled properly by the connector, php would hang after reading an unexpected packet. Workaround for this issue (for earlier tungsten versions) is to setproperty=defaultAuthPlugin=mysql_native_passwordwithin/etc/tungsten/tungsten.ini.Issue: CT-2471