Version End of Life. 31 January 2019
Tungsten Replicator 5.2.0 is a new feature release that contains a combination of new features, specifically new replicator applier targets:
This release also provides improvements to the trepctl and thl commands, and bug fixes to improve stability.
The trepctl command has been updated to provide a simplified status output that provides an easier to understand status, using the qs command. For example:
trepctl qsState: alpha Online for 1172.724s, running for 124280.671s Latency: 0.71s from source DB commit time on thl://ubuntuheterosrc:2112/ into target database 7564.198s since last source commit Sequence: 4860 last applied, 0 transactions behind (0-4860 stored) estimate 0.00s before synchronization
The trepctl perf command provides detailed performance information on the operation and status of the replicator and individual stages. This can be useful to identify where any additional latency or performance issues lie:
trepctl perfStatistics since last put online 1360.141s ago Stage | Seqno | Latency | Events | Extraction | Filtering | Applying | Other | Total remote-to-thl | 4860 | 0.475s | 70 | 116713.145s | 0.000s | 2.920s | 0.000s | 116716.065s Avg time per Event | 1667.331s | 0.000s | 0.000s | 0.042s | 1667.372s thl-to-q | 4860 | 0.527s | 3180 | 113842.933s | 0.011s | 2873.039s | 0.102s | 116716.085s Avg time per Event | 35.800s | 0.000s | 0.000s | 0.903s | 36.703s q-to-dbms | 4860 | 0.536s | 3180 | 112989.667s | 0.010s | 3701.035s | 25.554s | 116716.266s Avg time per Event | 35.531s | 0.000s | 0.008s | 1.164s | 36.703s
A new field has been added to the output of trepctl status -name tasks:
timeInCurrentEvent : 6571.462
This shows the time that the replictor has been processing the current event. For a long-running event, it helps to indicate that the replicator is still processing the curent event. Note that this is a just a counter for how low the current event has been running. For a replicator that is idle, this will show the time the replicator has spent both processing the original event and waiting to process the new event.
The thl list has been expanded to provide
simple and detailed THL size information so that large
transactions can be identified. Using the
detailed information about the size of the SQL, number of
rows, or both for each stored event. For example:
thl list -sizesSEQ# Frag# Tstamp ... 12 0 2017-06-28 13:21:11.0 Event total: 1 chunks 73 bytes in SQL statements 0 rows 13 0 2017-06-28 13:21:10.0 Event total: 1645 chunks 0 bytes in SQL statements 1645 rows 14 0 2017-06-28 13:21:11.0 Event total: 1 chunks 36 bytes in SQL statements 0 rows
The trepctl command has been updated to provide more detailed information on the performance of the replicator, see trepctl perf.
For easier navigation and selection of THL events, the
thl has had two further command-line
-last to select the first
and last events in the THL. Both also take an optional
number that shows the first N or last N events.
A new command, tungsten_send_diag, has been added that provides a simplified method for sending a tpm diag output automatically through to the support team. The new command uploads the diagnostic information directly in Amazon S3 without requiring a separate upload to Zendesk.
A new command, clean_release_directory has been added to the distribution. This command removes old releases from the installation directory that have been created during either upgrades or configuration updates. The command removes all old entries except the current active one, and the last five entries.
A new applier has been added to Tungsten Replicator that applies data directly into Cassandra. Data is loaded using a batch applier that writes the data through staging tables into Cassandra.
For more information, see Section 5.1, “Deploying the Cassandra Applier”.
A new applier has been added to Tungsten Replicator that applies data directly into Kafka. Incoming row data is converted into a JSON document which is then embedded into a Kafka message and sent on a topic using the schema and table name.
For more information, see Section 5.4, “Deploying the Kafka Applier”.
A new applier has been added to Tungsten Replicator that applies data directly into Elasticsearch. Incoming row data is converted into a JSON document and then uploaded directly into an Elasticsearch index and type according either to explicitly settings, or based automatically on the schema and table name.
For more information, see Section 5.2, “Deploying the Elasticsearch Applier”.
The filter functionality has been improved and standardised as a
continuing effort to make the filters more usable. At the
moment, the effect is embedded into the new filters in this
ConvertStringFromMySQLFilter). These new
filters do make use of a new configuration file system and
format based on JSON that will eventually become the standard
method to configure all filters.
A new filter,
SkipEventByType, has been
added. This allows for events to be skipped based on their
operation type (
DELETE). This can be
applied on a schema and/or table basis, alongside a default
option that will be applied to all schema/table combinations not
For more information, see Section 10.4.39, “SkipEventByType Filter”.
A new filter,
ConvertStringFromMySQLFilter, has been
added. This allows for conversion of data extracted and stored
in the native MySQL environment (where
This is particularly useful in situations where data is being
replicated out of an existing cluster (where bytes are used by
default), but the data is being replicated to a heterogeneous
For more information, see Section 10.4.10, “ConvertStringFromMySQL Filter”.
An auto-refresh option has been added to certain commands within
trepctl. By adding the
-r option and the number of
seconds to either trepctl status,
trepctl qs, or trepctl
perf commands. For example, trepctl qs -r
5 would refresh the quick status command every 5